Re: linux-next: build failure after merge of the aio tree

From: Benjamin LaHaise
Date: Thu Feb 04 2016 - 11:47:26 EST


On Thu, Feb 04, 2016 at 04:17:42PM +0000, Russell King - ARM Linux wrote:
> That's the easy bit!
>
> The problem you're going to run into is here:
>
> #define __get_user_nocheck(x, ptr, size) \
> ({ \
> int __gu_err; \
> unsigned long __gu_val; \
> __uaccess_begin(); \
> __get_user_size(__gu_val, (ptr), (size), __gu_err, -EFAULT); \
> __uaccess_end(); \
> (x) = (__force __typeof__(*(ptr)))__gu_val; \
>
> __gu_val will be 32-bit, even when you're wanting a 64-bit quantity.
> That's where the fun and games start...

You're right -- it's quite non-trivial. How evil would it be to make a
separate __get_user64() macro?

-ben
--
"Thought is the essence of where you are now."