Re: [PATCH v2] fanotify reports the thread id of the event trigger

From: Amir Goldstein
Date: Tue Sep 18 2018 - 03:07:13 EST


On Tue, Sep 18, 2018 at 6:01 AM Nixiaoming <nixiaoming@xxxxxxxxxx> wrote:
>
> On Mon, Sep 17, 2018 11:51 PM Amir Goldstein <amir73il@xxxxxxxxx> wrote:
> >On Mon, Sep 17, 2018 at 6:05 PM nixiaoming <nixiaoming@xxxxxxxxxx> wrote:
...
> >> diff --git a/include/linux/fsnotify_backend.h b/include/linux/fsnotify_backend.h
> >> index b8f4182..44c659f 100644
> >> --- a/include/linux/fsnotify_backend.h
> >> +++ b/include/linux/fsnotify_backend.h
> >> @@ -193,6 +193,7 @@ struct fsnotify_group {
> >> unsigned int max_marks;
> >> struct user_struct *user;
> >> bool audit;
> >> + bool should_report_tid;
> >
> >For brevity I would call that report_tid, but not insisting.
> >
>
> Whether it is better to change to "unsigned int flags"
> Save "group->fanotify_data.flags=flags;" in "fanotify_init"
> Determine whether "group->fanotify_data.flags" contains "FAN_EVENT_INFO_TID" in "fanotify_alloc_event";
>
> At the same time, if there are other flags that need to be used later, there is no need to add new members.
>
> By the way, whether or not "bool audit" can also be included by flags
>

I strongly agree. Didn't want to impose this change on you, but in
fact, I already did
that in my own patch set, so you can use my patches as reference:
https://github.com/amir73il/linux/commit/5225fe1e19c74f4d7a4a4cc98ff6ef5872c8e620
https://github.com/amir73il/linux/commit/0d1a226f5c18012f19ed6eabfab46f0f125ec190

If you do this you need to separate your change into 2 patches.
First make the fanotify_data.flags change collecting the pieces from both
my patches.
Then make your TID change using fanotify_data.flags.

Thanks,
Amir.