| From fd2d2b191fe75825c4c7a6f12f3fef35aaed7dd7 Mon Sep 17 00:00:00 2001 |
| From: Al Viro <viro@zeniv.linux.org.uk> |
| Date: Sun, 21 Aug 2016 22:00:54 -0400 |
| Subject: s390: get_user() should zero on failure |
| |
| From: Al Viro <viro@zeniv.linux.org.uk> |
| |
| commit fd2d2b191fe75825c4c7a6f12f3fef35aaed7dd7 upstream. |
| |
| Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/s390/include/asm/uaccess.h | 8 ++++---- |
| 1 file changed, 4 insertions(+), 4 deletions(-) |
| |
| --- a/arch/s390/include/asm/uaccess.h |
| +++ b/arch/s390/include/asm/uaccess.h |
| @@ -215,28 +215,28 @@ int __put_user_bad(void) __attribute__(( |
| __chk_user_ptr(ptr); \ |
| switch (sizeof(*(ptr))) { \ |
| case 1: { \ |
| - unsigned char __x; \ |
| + unsigned char __x = 0; \ |
| __gu_err = __get_user_fn(&__x, ptr, \ |
| sizeof(*(ptr))); \ |
| (x) = *(__force __typeof__(*(ptr)) *) &__x; \ |
| break; \ |
| }; \ |
| case 2: { \ |
| - unsigned short __x; \ |
| + unsigned short __x = 0; \ |
| __gu_err = __get_user_fn(&__x, ptr, \ |
| sizeof(*(ptr))); \ |
| (x) = *(__force __typeof__(*(ptr)) *) &__x; \ |
| break; \ |
| }; \ |
| case 4: { \ |
| - unsigned int __x; \ |
| + unsigned int __x = 0; \ |
| __gu_err = __get_user_fn(&__x, ptr, \ |
| sizeof(*(ptr))); \ |
| (x) = *(__force __typeof__(*(ptr)) *) &__x; \ |
| break; \ |
| }; \ |
| case 8: { \ |
| - unsigned long long __x; \ |
| + unsigned long long __x = 0; \ |
| __gu_err = __get_user_fn(&__x, ptr, \ |
| sizeof(*(ptr))); \ |
| (x) = *(__force __typeof__(*(ptr)) *) &__x; \ |