Re: fsnotify_mark_srcu wtf?

From: Amir Goldstein
Date: Mon Nov 14 2016 - 07:00:07 EST


On Sun, Nov 13, 2016 at 8:43 PM, Amir Goldstein <amir73il@xxxxxxxxx> wrote:
> On Thu, Nov 10, 2016 at 9:46 PM, Jan Kara <jack@xxxxxxx> wrote:
>
> ...
>
>>
>> Well but how would you like to protect the mark list hanging off the inode
>> / mountpoint with two SRCUs? You'd need two lists hanging off the inode &
>> mountpoint (for different priorities) and that's too big cost to pay to
>> accomodate broken userspace...
>>
>
> This is the plan.
> I have a rough implementation, which still requires some testing:
>

2 patches posted:
fsnotify: separate fsnotify_mark_srcu for groups with permission events
fsnotify: handle permission events without holding fsnotify_mark_srcu[0]

Miklos,

Your test program actually passes after the first patch (split to 2 SRCU)
but only because it does not add any inotify mark, so I modified your test
a bit and made it available on my github:
https://github.com/amir73il/fsnotify-utils/blob/master/fanotify_bug.c

Jan,

Please let me know what you think of this version.

Thanks,
Amir.