diff options
author | Arnd Bergmann <arnd@arndb.de> | 2019-12-13 23:06:58 +0100 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2019-12-14 00:00:36 +0100 |
commit | f729a1b0f8df7091cea3729fc0e414f5326e1163 (patch) | |
tree | 9781ad354610754e1c7c459f9b661156f6ebaa7d /include | |
parent | Input: uinput - always report EPOLLOUT (diff) | |
download | linux-f729a1b0f8df7091cea3729fc0e414f5326e1163.tar.xz linux-f729a1b0f8df7091cea3729fc0e414f5326e1163.zip |
Input: input_event - fix struct padding on sparc64
Going through all uses of timeval, I noticed that we screwed up
input_event in the previous attempts to fix it:
The time fields now match between kernel and user space, but all following
fields are in the wrong place.
Add the required padding that is implied by the glibc timeval definition
to fix the layout, and use a struct initializer to avoid leaking kernel
stack data.
Fixes: 141e5dcaa735 ("Input: input_event - fix the CONFIG_SPARC64 mixup")
Fixes: 2e746942ebac ("Input: input_event - provide override for sparc64")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20191213204936.3643476-2-arnd@arndb.de
Cc: stable@vger.kernel.org
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/uapi/linux/input.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/uapi/linux/input.h b/include/uapi/linux/input.h index f056b2a00d5c..9a61c28ed3ae 100644 --- a/include/uapi/linux/input.h +++ b/include/uapi/linux/input.h @@ -34,6 +34,7 @@ struct input_event { __kernel_ulong_t __sec; #if defined(__sparc__) && defined(__arch64__) unsigned int __usec; + unsigned int __pad; #else __kernel_ulong_t __usec; #endif |