On Fri, May 17, 2013 at 2:05 PM, Mikael Pettersson <mi...@it.uu.se> wrote: > > > --- linux-3.8/arch/m68k/include/asm/futex.h.~1~ 1970-01-01 > 01:00:00.000000000 +0100 > > > +++ linux-3.8/arch/m68k/include/asm/futex.h 2013-02-20 > 22:07:23.459917612 +0100 > > > @@ -0,0 +1,94 @@ > > > +#ifndef _ASM_M68K_FUTEX_H > > > +#define _ASM_M68K_FUTEX_H > > > + > > > +#ifdef __KERNEL__ > > > +#if !defined(CONFIG_MMU) > > > +#include <asm-generic/futex.h> > > > +#else /* CONFIG_MMU */ > > > > Why would you not use the version below on nommu? > > It doesn't seem to have any real dependencies on MMU support? > > What am I missing? > > The only reason I don't handle no-MMU is that I don't know how much > no-MMU butchers the semantics of the various primitives (mainly the > user-space accessors).
The userspace accessors shouldn't matter much, I think. > Does no-MMU pagefault_disable() disable preemption? This code > relies on that. It seems it does. > > > +#include <linux/futex.h> > > > +#include <linux/uaccess.h> > > > +#include <asm/errno.h> > > > + > > > +static inline int > > > +futex_atomic_cmpxchg_inatomic(u32 *uval, u32 __user *uaddr, > > > + u32 oldval, u32 newval) > > > +{ > > > + u32 val; > > > + > > > + if (unlikely(get_user(val, uaddr) != 0)) > > > + return -EFAULT; > > > + > > > + if (val == oldval && unlikely(put_user(newval, uaddr) != 0)) > > > + return -EFAULT; > > > + > > > + *uval = val; > > > + > > > + return 0; > > > +} > > > > This is purely generic, so it could move to the asm-generic version, > > also fixing blackfin, c6x, metag, openrisc, um, unicore32, and xtensa? > > Yes it should be put somewhere generic, but I don't want to have to > investigate each and every arch to guess if they can safely use this > version or not. I'd rather put this somewhere alongside the stub futex.h > and have other archs opt-in at the discretion of their maintainers. Anyway, the m68k version is now in mainline, so I'll let the uClinux people decide the rest... Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds _______________________________________________ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev