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

Reply via email to