Messages in this thread | | | Date | Mon, 15 Jul 2013 10:49:51 -0700 | Subject | Re: [uclinux-dist-devel] [GIT PULL] Blackfin updates for 3.11 | From | Linus Torvalds <> |
| |
On Mon, Jul 15, 2013 at 10:28 AM, Geert Uytterhoeven <geert@linux-m68k.org> wrote: > > but the first one is non-trivial: using xchg() on atomic_t is a bit gross...
It's also broken. There's no guarantee that an "atomic_t" is just a value. Now, the old sparc32 stuff (which hid lock bits in atomic_t) may be gone, but it's still the case that atomic_t may not actually work with xchg.
(In *practice* it works on normal architectures, so I'm not saying that we don't have it, but it's a bug if we do).
There are "atomic_xchg()" and "atomic_xchg64()" functions that are supported.
Linus
| |