Bug 216775 - fanotify reports parent PPID insted of PID for FAN_MODIFY events
Summary: fanotify reports parent PPID insted of PID for FAN_MODIFY events
Status: RESOLVED INVALID
Alias: None
Product: File System
Classification: Unclassified
Component: ext4 (show other bugs)
Hardware: Intel Linux
: P1 normal
Assignee: fs_ext4@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-12-05 04:38 UTC by opcoder0
Modified: 2022-12-05 09:19 UTC (History)
1 user (show)

See Also:
Kernel Version: 5.15.0
Subsystem:
Regression: No
Bisected commit-id:


Attachments

Description opcoder0 2022-12-05 04:38:02 UTC
Hello,

While I've been developing a library around fanotify in Go, I noticed that fanotify subsystem reports the parent process ID in fanotify_event_metadata.pid instead of the Process ID when mask is set to FAN_MODIFY. I was able to confirm the error through a test and also manually verifying the PIDs in the audit log. I did not observe this behaviour for FAN_ACCESS bit.

I've been able to reproduce this on -

Ubuntu 20.04.5 - 5.15.0-53-generic
Ubuntu 22.10 - 5.19.0-23-generic

It can be reproduced by -

git clone git@github.com:opcoder0/fanotify.git
cd fanotify
sudo go test -v

The test "TestWithCapSysAdmFanotifyFileModified" fails reporting pid mismatch.
Comment 1 Amir Goldstein 2022-12-05 08:45:00 UTC
On Mon, Dec 5, 2022 at 7:02 AM <bugzilla-daemon@kernel.org> wrote:
>
> https://bugzilla.kernel.org/show_bug.cgi?id=216775
>
>             Bug ID: 216775
>            Summary: fanotify reports parent PPID insted of PID for
>                     FAN_MODIFY events
>            Product: File System
>            Version: 2.5
>     Kernel Version: 5.15.0
>           Hardware: Intel
>                 OS: Linux
>               Tree: Mainline
>             Status: NEW
>           Severity: normal
>           Priority: P1
>          Component: ext4
>           Assignee: fs_ext4@kernel-bugs.osdl.org
>           Reporter: saikiran.gummaraj@icloud.com
>         Regression: No
>
> Hello,
>
> While I've been developing a library around fanotify in Go, I noticed that
> fanotify subsystem reports the parent process ID in
> fanotify_event_metadata.pid
> instead of the Process ID when mask is set to FAN_MODIFY. I was able to
> confirm
> the error through a test and also manually verifying the PIDs in the audit
> log.
> I did not observe this behaviour for FAN_ACCESS bit.
>
> I've been able to reproduce this on -
>
> Ubuntu 20.04.5 - 5.15.0-53-generic
> Ubuntu 22.10 - 5.19.0-23-generic
>
> It can be reproduced by -
>
> git clone git@github.com:opcoder0/fanotify.git
> cd fanotify
> sudo go test -v
>
> The test "TestWithCapSysAdmFanotifyFileModified" fails reporting pid
> mismatch.
>

It's a test bug.
The modify event with self pid is generated by os.WriteFile()
Either change test to expect modify event with self pid or move
test file creation before starting the listener.

Thanks,
Amir.
Comment 2 opcoder0 2022-12-05 09:18:58 UTC
Sorry missed that. Thanks a lot!
Comment 3 opcoder0 2022-12-05 09:19:43 UTC
Test issue.

Note You need to log in before you can comment on or make changes to this bug.