diff options
author | Yoshinori Sato <ysato@users.sourceforge.jp> | 2008-03-13 12:32:37 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-03-13 13:11:43 -0700 |
commit | 12d48739d0b5d96efe6b7d26107f5572c6215f4a (patch) | |
tree | 0a2fa386b8d3449900caf1150093698d0b4373f1 /mm/mremap.c | |
parent | fb39380b8d683b55630ba5ba381f4e43e417420e (diff) | |
download | op-kernel-dev-12d48739d0b5d96efe6b7d26107f5572c6215f4a.zip op-kernel-dev-12d48739d0b5d96efe6b7d26107f5572c6215f4a.tar.gz |
h8300: fix recent uaccess breakage
Al Viro wrote:
>
> After that commit in asm-h8300/uaccess.h we have
>
> #define get_user(x, ptr) \
> ({ \
> int __gu_err = 0; \
> uint32_t __gu_val = 0; \
> ^^^^^^^^^^^^^^^^^
> switch (sizeof(*(ptr))) { \
> case 1: \
> case 2: \
> case 4: \
> __gu_val = *(ptr); \
> break; \
> case 8: \
> memcpy(&__gu_val, ptr, sizeof (*(ptr))); \
> ^^^^^^^^^^^^^^^^
>
> which, of course, is FUBAR whenever we actually hit that case - memcpy of
> 8 bytes into uint32_t is obviously wrong. Why don't we simply do
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/mremap.c')
0 files changed, 0 insertions, 0 deletions