Page MenuHomeFreeBSD

fusefs: implement VOP_DEALLOCATE
ClosedPublic

Authored by asomers on Jan 9 2022, 4:55 AM.
Tags
None
Referenced Files
F105573280: D33800.diff
Tue, Dec 17, 8:01 PM
Unknown Object (File)
Tue, Dec 10, 6:19 PM
Unknown Object (File)
Thu, Dec 5, 12:31 PM
Unknown Object (File)
Wed, Nov 20, 12:15 AM
Unknown Object (File)
Nov 12 2024, 5:53 PM
Unknown Object (File)
Nov 12 2024, 5:34 PM
Unknown Object (File)
Nov 5 2024, 7:31 AM
Unknown Object (File)
Oct 26 2024, 3:44 PM
Subscribers

Details

Summary

fusefs: implement VOP_DEALLOCATE

MFC after: Never

Test Plan

test cases added. Manual testing for NFS

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 43796
Build 40684: arc lint + arc unit

Event Timeline

sys/fs/fuse/fuse_vnops.c
2989

I don't know fuse, but you might need a:

if (ap->a_ioflag & IO_SYNC)
    - do an fsync

in here.

Like VOP_ALLOCATE(), the nfsd passes IO_SYNC to
VOP_DEALLOCATE(), to ensure that the data/metadata
is on stable storage before the RPC replies.

sys/fs/fuse/fuse_vnops.c
2989

When IO_SYNC is set, is it necessary to flush all buffers for the file, to ensure that the entire file is synced before the RPC replies, or is it only necessary to ensure that this operation is synced?

sys/fs/fuse/fuse_vnops.c
2989

The intention of IO_SYNC in the VOP is to only ensure this operation is synced.

  • Properly handle IO_SYNC during VOP_DEALLOCATE for fuse
This revision is now accepted and ready to land.Jan 18 2022, 7:23 PM
This revision was automatically updated to reflect the committed changes.