HomeFreeBSD

fusefs: replace the fufh table with a linked list

Description

fusefs: replace the fufh table with a linked list

The FUSE protocol allows each open file descriptor to have a unique file
handle. On FreeBSD, these file handles must all be stored in the vnode.
The old method (also used by OSX and OpenBSD) is to store them all in a
small array. But that limits the total number that can be stored. This
commit replaces the array with a linked list (a technique also used by
Illumos). There is not yet any change in functionality, but this is the
first step to fixing several bugs.

PR: 236329, 236340, 236381, 236560, 236844
Discussed with: cem
Sponsored by: The FreeBSD Foundation

Details

Provenance
asomersAuthored on
Parents
rS345741: freebsd32: fix padding of computed control message length for recvmsg()
Branches
Unknown
Tags
Unknown