Page MenuHomeFreeBSD

unionfs: implement VOP_UNP_* and remove special VSOCK vnode handling
ClosedPublic

Authored by jah on Mar 10 2024, 2:09 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, May 10, 9:49 PM
Unknown Object (File)
Fri, May 10, 9:49 PM
Unknown Object (File)
Wed, May 8, 2:50 AM
Unknown Object (File)
Wed, May 1, 6:39 AM
Unknown Object (File)
Sun, Apr 28, 10:28 AM
Unknown Object (File)
Fri, Apr 26, 4:02 AM
Unknown Object (File)
Mon, Apr 22, 6:59 AM
Unknown Object (File)
Sun, Apr 21, 6:28 AM

Details

Summary

unionfs has a bunch of clunky special-case code to avoid creating
unionfs wrapper vnodes for AF_UNIX sockets. This was added in 2008
to address PR 118346, but in the intervening years the VOP_UNP_*
operations have been added to provide a clean interface to allow
sockets to work in the presence of stacked filesystems.

PR: 275871
Tested by: Karlo Miličević <karlo98.m@gmail.com>
MFC after: 2 weeks

Diff Detail

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

Event Timeline

jah requested review of this revision.Mar 10 2024, 2:09 AM
This revision is now accepted and ready to land.Mar 10 2024, 5:32 PM

Great! More cruft removed, including one call to unionfs_relookup(). I have a few suggestions.

sys/fs/unionfs/union_vnops.c
1044–1046

I would now assert that a_vp is also a unionfs node.

1068–1069

unp is never supposed to be NULL now here.

1071–1072

Same here.

Code review feedback, also remove a nonsensical check from unionfs_link()

This revision now requires review to proceed.Mar 16 2024, 3:49 PM
This revision is now accepted and ready to land.Mar 20 2024, 4:02 AM