Page MenuHomeFreeBSD

autounmountd: set filter-specific flags for the EVFILT_FS event
ClosedPublic

Authored by rew on Feb 27 2021, 7:47 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Nov 4, 2:20 AM
Unknown Object (File)
Mon, Nov 4, 2:19 AM
Unknown Object (File)
Mon, Nov 4, 2:19 AM
Unknown Object (File)
Mon, Nov 4, 1:59 AM
Unknown Object (File)
Thu, Oct 31, 8:49 PM
Unknown Object (File)
Oct 23 2024, 7:26 PM
Unknown Object (File)
Oct 23 2024, 10:33 AM
Unknown Object (File)
Oct 20 2024, 5:43 PM
Subscribers

Details

Summary

Set the filter-specific flags VQ_MOUNT and VQ_UNMOUNT for the
EVFILT_FS event.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Thank you, but why?

This is more about the commit message than the code itself; I don't remember how kevent works for mount/umount events, and it's not documented in the kqueue(2) man page. In particular, does it fix a bug, or is an API-correctness fix that doesn't change semantics?

Looks like related to D28974, in which case it looks fine.

This revision is now accepted and ready to land.Mar 2 2021, 7:29 PM

Looks like related to D28974, in which case it looks fine.

yep, cool - thanks.

D28974 is a bug fix for the EVFILT_FS filter - the bug was that kevents registered for EVFILT_FS were triggered for every EVFILT_FS event, regardless of the fflags specified.

After the fix in D28974, autounmountd wasn't being notified of any kevents (since fflags was 0) - so this review fixes that.

couple other things:

EV_CLEAR could be removed here since it's set by default for EVFILT_FS events - as you know, it doesn't hurt to leave it there though..

noted about the lack of documentation for EVFILT_FS in kqueue(2), will add it to the TODO list..