Re: [PATCH 8/8] staging: lustre: put constant on the right of binary operator

From: Julia Lawall
Date: Sun Aug 30 2015 - 13:12:22 EST




On Sat, 29 Aug 2015, Joe Perches wrote:

> On Sat, 2015-08-29 at 19:30 +0200, Julia Lawall wrote:
> > Move constants to the right of binary operators.
> []
> > diff --git a/drivers/staging/lustre/lustre/ptlrpc/client.c b/drivers/staging/lustre/lustre/ptlrpc/client.c
> []
> > @@ -2954,7 +2954,7 @@ void ptlrpc_init_xid(void)
> > }
> >
> > /* Always need to be aligned to a power-of-two for multi-bulk BRW */
> > - CLASSERT((PTLRPC_BULK_OPS_COUNT & (PTLRPC_BULK_OPS_COUNT - 1)) == 0);
> > + CLASSERT(((PTLRPC_BULK_OPS_COUNT - 1) & PTLRPC_BULK_OPS_COUNT) == 0);
>
> This one would probably be better as
>
> CLASSERT(is_power_of_2(PTLRPC_BULK_OPS_COUNT));

Actually not. CLASSERT requires that the expression is considered to be a
constant by the compiler, such that there will be a compiler error, and
the result of is_power_of_2 is not constant enough.

julia
--
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/