Thread (15 messages) 15 messages, 4 authors, 2016-02-04

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

From: bcrl@kvack.org (Benjamin LaHaise)
Date: 2016-02-04 16:27:54
Also in: linux-next, lkml

On Thu, Feb 04, 2016 at 04:17:42PM +0000, Russell King - ARM Linux wrote:
On Thu, Feb 04, 2016 at 11:01:01AM -0500, Benjamin LaHaise wrote:
quoted
On Thu, Feb 04, 2016 at 02:39:07PM +0000, Russell King - ARM Linux wrote:
quoted
However, this one should warn:

int test_wrong(char **v, const char **p)
{ return __get_user(*v, p); }

Good luck (I think you'll need lots of it to get a working solution)! :)
This works with your test cases on x86-32.  Note that it's only compile + 
link tested at present.
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...
Ugh.  You're making me install a 32 bit distro.....!

		-ben
-- 
RMK's Patch system: http://www.arm.linux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.
-- 
"Thought is the essence of where you are now."
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help