aboutsummaryrefslogtreecommitdiffstats
path: root/fs/notify
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2014-02-21 13:02:34 -0500
committerJan Kara <jack@suse.cz>2014-02-25 05:17:52 -0500
commit2513190a926f093dbdc301c68e6ade0bcf293f9a (patch)
tree9840dafc6bfd9319537272abf04feb09b430e127 /fs/notify
parent0dc83bd30b0bf5410c0933cfbbf8853248eff0a9 (diff)
fsnotify: Fix detection whether overflow event is queued
Currently we didn't initialize event's list head when we removed it from the event list. Thus a detection whether overflow event is already queued wasn't working. Fix it by always initializing the list head when deleting event from a list. Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/notify')
-rw-r--r--fs/notify/notification.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/notify/notification.c b/fs/notify/notification.c
index 18b3c4427dca..6bec2f4918f9 100644
--- a/fs/notify/notification.c
+++ b/fs/notify/notification.c
@@ -132,7 +132,11 @@ struct fsnotify_event *fsnotify_remove_notify_event(struct fsnotify_group *group
132 132
133 event = list_first_entry(&group->notification_list, 133 event = list_first_entry(&group->notification_list,
134 struct fsnotify_event, list); 134 struct fsnotify_event, list);
135 list_del(&event->list); 135 /*
136 * We need to init list head for the case of overflow event so that
137 * check in fsnotify_add_notify_events() works
138 */
139 list_del_init(&event->list);
136 group->q_len--; 140 group->q_len--;
137 141
138 return event; 142 return event;