Re: [PATCH 0/2] jump label: 2.6.38 updates
From: Peter Zijlstra
Date: Mon Feb 14 2011 - 12:26:29 EST
On Mon, 2011-02-14 at 12:18 -0500, Steven Rostedt wrote:
> mn10300:
> #define atomic_read(v) ((v)->counter)
> tile:
> static inline int atomic_read(const atomic_t *v)
> {
> return v->counter;
> }
Yeah, I already send email to the respective maintainers telling them
they might want to fix this ;-)
> So all but a few have basically (as you said on IRC)
> #define atomic_read(v) ACCESS_ONCE(v)
ACCESS_ONCE(v->counter), but yeah :-)
> Those few are blackfin, s390, powerpc and tile.
>
> s390 probably doesn't need that much of a big hammer with atomic_read()
> (unless it uses it in its own arch that expects it to be such).
Right, it could just do the volatile thing..
> powerpc could probably be converted to just the volatile code as
> everything else. Not sure why it did it that way. To be different?
Maybe that code was written before we all got inventive with the
volatile cast stuff..
> blackfin, seems to be doing quite a lot. Not sure if it is required, but
> that may need a bit of investigating to understand why it does the
> raw_uncached thing.
>From what I can tell its flushing its write cache, invalidating its
d-cache and then issue the read, something which is _way_ overboard.
> Maybe we could move the atomic_read() out of atomic and make it a
> standard inline for all (in kernel.h)?
Certainly looks like that might work..
--
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/