Re: [patch 3/24] s390: channel path measurements.

From: Andrew Morton
Date: Wed Mar 22 2006 - 16:27:31 EST


Martin Schwidefsky <schwidefsky@xxxxxxxxxx> wrote:
>
> From: Cornelia Huck <cornelia.huck@xxxxxxxxxx>
>
> [patch 3/24] s390: channel path measurements.
>
> Gather extended measurements for channel paths from the channel subsystem
> and expose them to userspace via a sysfs attribute.
>
> ...
>
> +static void
> +chsc_remove_cmg_attr(struct channel_subsystem *css)
> +{
> + int i;
> +
> + for (i = 0; i <= __MAX_CHPID; i++) {

hm, it's somewhat unusual for MAX_FOO to be inclusive. Usually it means
"greatest possible+1".

you have

struct channel_subsystem {
struct channel_path *chps[__MAX_CHPID + 1];

so I guess it all works..

> +static inline int
> +__chsc_do_secm(struct channel_subsystem *css, int enable, void *page)

This has two callsites. inlining it probably deoptimises things.

> + secm_area->request = (struct chsc_header) {
> + .length = 0x0050,
> + .code = 0x0016,
> + };

gcc tends to generate poor code for this construct.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/