fusefs: add comments explaining why 7.11 features aren't implemented

Protocol 7.11 adds two new features, but neither of them were defined
correctly.  FUSE_IOCTL messages don't work for 32-bit daemons on a 64-bit
host (fixed in protocol 7.16).  FUSE_POLL is basically unusable until 7.21.
Before 7.21, the client can't choose which events to register for; the
client registers for "something" and the server replies to say which events
the client is registered for.  Also, before 7.21 there was no way for a
client to deregister a file handle.

Sponsored by:	The FreeBSD Foundation
This commit is contained in:
Alan Somers 2019-05-29 02:03:08 +00:00
parent 9c62bc7045
commit e039bafa87
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/projects/fuse2/; revision=348348

View File

@ -182,6 +182,11 @@ struct vop_vector fuse_vnops = {
.vop_getattr = fuse_vnop_getattr,
.vop_getextattr = fuse_vnop_getextattr,
.vop_inactive = fuse_vnop_inactive,
/*
* TODO: implement vop_ioctl after upgrading to protocol 7.16.
* FUSE_IOCTL was added in 7.11, but 32-bit compat is broken until
* 7.16.
*/
.vop_link = fuse_vnop_link,
.vop_listextattr = fuse_vnop_listextattr,
.vop_lookup = fuse_vnop_lookup,
@ -189,6 +194,12 @@ struct vop_vector fuse_vnops = {
.vop_mknod = fuse_vnop_mknod,
.vop_open = fuse_vnop_open,
.vop_pathconf = fuse_vnop_pathconf,
/*
* TODO: implement vop_poll after upgrading to protocol 7.21.
* FUSE_POLL was added in protocol 7.11, but it's kind of broken until
* 7.21, which adds the ability for the client to choose which poll
* events it wants, and for a client to deregister a file handle
*/
.vop_read = fuse_vnop_read,
.vop_readdir = fuse_vnop_readdir,
.vop_readlink = fuse_vnop_readlink,