Re: >Re: [RFC] should VM_BUG_ON(cond) really evaluate cond
From: Linus Torvalds
Date: Sun Oct 30 2011 - 13:48:58 EST
On Sun, Oct 30, 2011 at 10:41 AM, Eric Dumazet <eric.dumazet@xxxxxxxxx> wrote:
>
> Changing atomic_read(const atomic_t *v) prototype to
> atomic_read(atomic_t *v) is not an option.
Why not?
#define atomic_read(v) ACCESS_AT_MOST_ONCE((v)->counter)
seems to be the cleanest thing.
And if you don't think this is "an option", I really can't see why you
care about the extra instructions in the code stream either.
> 4) macro (I personnaly dont like it)
> #define atomic_read(v) ACCESS_AT_MOST_ONCE(*(int *)&(v)->counter)
Why the *hell* would you have that cast there?
If somebody passes "const atomic_t"'s around, then just shoot the
bastard. The concept makes no sense.
Grepping for "const atomic_t" shows absolutely *zero* users, except
for the crazy inline function declaration itself.
Stop the insanity already. Get rid of the f*cking "const".
Linus
--
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/