mirror of https://gitee.com/openkylin/linux.git
fanotify: do not leak user reference on allocation failure
If fanotify_init is unable to allocate a new fsnotify group it will return but will not drop its reference on the associated user struct. Drop that reference on error. Reported-by: Vegard Nossum <vegard.nossum@gmail.com> Signed-off-by: Eric Paris <eparis@redhat.com>
This commit is contained in:
parent
a2ae4cc9a1
commit
2637919893
|
@ -692,8 +692,10 @@ SYSCALL_DEFINE2(fanotify_init, unsigned int, flags, unsigned int, event_f_flags)
|
|||
|
||||
/* fsnotify_alloc_group takes a ref. Dropped in fanotify_release */
|
||||
group = fsnotify_alloc_group(&fanotify_fsnotify_ops);
|
||||
if (IS_ERR(group))
|
||||
if (IS_ERR(group)) {
|
||||
free_uid(user);
|
||||
return PTR_ERR(group);
|
||||
}
|
||||
|
||||
group->fanotify_data.user = user;
|
||||
atomic_inc(&user->fanotify_listeners);
|
||||
|
|
Loading…
Reference in New Issue