Re: [PATCH] Fix WARN_ON / WARN_ON_ONCE regression

Tim Chen
2006-10-10T16:31:12Z

On Tue, 2006-10-10 at 09:04 -0400, Steven Rostedt wrote:

>
> Holy crap! I wonder where else in the kernel gcc is doing this. (of
> course I'm using gcc4 so I don't know). Is there another gcc attribute
> to actually tell gcc that a variable is really mostly read only (besides
> placing it in a mostly read only elf section)?
>
> What was wrong with the original WARN_ON_ONCE with
>
> if (unlikely(condition) && __warn_once)
>
> This didn't have the cache crash problem too, did it?
> I don't have a gcc3 around to test.

In the original WARN_ON_ONCE, gcc3 only writes to __warn_once when
(condition) is true. So it does not cause cache bouncing by always
writing to __warn_once.

Tim