memcg_write_event_control(): fix a user-triggerable oops
commit 046667c4d3196938e992fba0dfcde570aa85cd0e upstream.
we are *not* guaranteed that anything past the terminating NUL
is mapped (let alone initialized with anything sane).
Fixes: 0dea116876
("cgroup: implement eventfd-based generic API for notifications")
Cc: stable@vger.kernel.org
Cc: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
df368d0d5f
Коммит
0fbe2a72e8
|
@ -4807,9 +4807,12 @@ static ssize_t memcg_write_event_control(struct kernfs_open_file *of,
|
|||
buf = endp + 1;
|
||||
|
||||
cfd = simple_strtoul(buf, &endp, 10);
|
||||
if ((*endp != ' ') && (*endp != '\0'))
|
||||
if (*endp == '\0')
|
||||
buf = endp;
|
||||
else if (*endp == ' ')
|
||||
buf = endp + 1;
|
||||
else
|
||||
return -EINVAL;
|
||||
buf = endp + 1;
|
||||
|
||||
event = kzalloc(sizeof(*event), GFP_KERNEL);
|
||||
if (!event)
|
||||
|
|
Загрузка…
Ссылка в новой задаче