[PATCH] ppc64: kill might_sleep() warnings in __copy_*_user_inatomic
Olof Johansson
olof at austin.ibm.com
Sat Mar 12 07:30:44 EST 2005
On Fri, Mar 11, 2005 at 12:45:37PM +0100, Arnd Bergmann wrote:
> On Freedag 11 März 2005 00:39, Olof Johansson wrote:
> > Actually, I think I would prefer the following. It renames current
> > __copy_{to,from}_user to __copy_{to,from}_user_inatomic, adds the
> > old ones as inlines doing the might_sleep() and calling the inatomics
> > afterwards. This way the calls to __copy_{to,from}_user() will be caught
> > if called under lock or preemption as well. This is also how i386 does it.
>
> Yes, that solution is better than mine. However, you missed the case where
> __copy_{to,from}_user_inatomic calls __{get,put}_user_size, which in turn
> does might_sleep(). I now changed the {get,put}_user path accordingly.
>
> I have checked that this version boots and does not warn about futex.
Doh! Great, thanks.
> ---
> This implements the __copy_{to,from}_user_inatomic() functions on ppc64.
> The only difference between the inatomic and regular version is that
> inatomic does not call might_sleep() to detect possible faults while
> holding locks/elevated preempt counts.
>
> Signed-off-by: Olof Johansson <olof at austin.ibm.com>
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
Acked-by: Olof Johansson <olof at austin.ibm.com>
More information about the Linuxppc64-dev
mailing list