mirror of
https://github.com/torvalds/linux.git
synced 2026-06-09 07:03:37 +02:00
inotify: don't leak user struct on inotify release
commitb3b38d842fupstream. inotify_new_group() receives a get_uid-ed user_struct and saves the reference on group->inotify_data.user. The problem is that free_uid() is never called on it. Issue seem to be introduced by63c882a0(inotify: reimplement inotify using fsnotify) after 2.6.30. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Eric Paris <eparis@parisplace.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Eric Paris <eparis@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
c606e701ef
commit
d8ca15afb8
|
|
@ -28,6 +28,7 @@
|
|||
#include <linux/path.h> /* struct path */
|
||||
#include <linux/slab.h> /* kmem_* */
|
||||
#include <linux/types.h>
|
||||
#include <linux/sched.h>
|
||||
|
||||
#include "inotify.h"
|
||||
|
||||
|
|
@ -146,6 +147,7 @@ static void inotify_free_group_priv(struct fsnotify_group *group)
|
|||
idr_for_each(&group->inotify_data.idr, idr_callback, group);
|
||||
idr_remove_all(&group->inotify_data.idr);
|
||||
idr_destroy(&group->inotify_data.idr);
|
||||
free_uid(group->inotify_data.user);
|
||||
}
|
||||
|
||||
void inotify_free_event_priv(struct fsnotify_event_private_data *fsn_event_priv)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user