Commit 8aed8ceb authored by Jan Kara's avatar Jan Kara

fanotify: compare fsid when merging name event

When merging name events, fsids of the two involved events have to
match. Otherwise we could merge events from two different filesystems
and thus effectively loose the second event.

Backporting note: Although the commit cacfb956 introducing this bug
was merged for 5.7, the relevant code didn't get used in the end until
7e8283af ("fanotify: report parent fid + name + child fid") which
will be merged with this patch. So there's no need for backporting this.

Fixes: cacfb956 ("fanotify: record name info for FAN_DIR_MODIFY event")
Reported-by: default avatarAmir Goldstein <amir73il@gmail.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
parent b9a1b977
...@@ -82,6 +82,9 @@ static bool fanotify_name_event_equal(struct fanotify_name_event *fne1, ...@@ -82,6 +82,9 @@ static bool fanotify_name_event_equal(struct fanotify_name_event *fne1,
if (!info1->dir_fh_totlen) if (!info1->dir_fh_totlen)
return false; return false;
if (!fanotify_fsid_equal(&fne1->fsid, &fne2->fsid))
return false;
return fanotify_info_equal(info1, info2); return fanotify_info_equal(info1, info2);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment