HomeFreeBSD

fusefs: FUSE_NOTIFY_INVAL_* must busy the mountpoint

Description

fusefs: FUSE_NOTIFY_INVAL_* must busy the mountpoint

Unusually, the FUSE_NOTIFY_INVAL_INODE and FUSE_NOTIFY_INVAL_ENTRY
messages are fully asynchronous. The server sends them to the kernel
unsolicited. That means that unlike every other fuse message coming
from the server, these two arrive to a potentially unbusied mountpoint.
So they must explicitly busy it. Otherwise a page fault could result if
the mountpoint were being unmounted.

Reported by: JSML4ThWwBID69YC@protonmail.com

(cherry picked from commit 989998529387b4d98dfaa6c499ad88b006f78de8)

Details

Provenance
asomersAuthored on Dec 13 2024, 2:00 PM
Parents
rG980eedb0cad6: pf: avoid use-after-free on reassembly
Branches
Unknown
Tags
Unknown