which ioctls matter across filesystems

Steve French
2005-04-29T19:22:39Z

Other than the obvious example of
EXT2_IOC_GETFLAGS
and
EXT2_IOC_SETFLAGS
which are implemented by multiple filesystems (and are necessary to
support a few commonly used tools), are there any other ioctls which
should be able to be sent remotely (optionally)? For it to be worth
extending the network protocol (in my case CIFS to servers such as
Samba, but presumably cluster filesystems have similar interests in
supporting all key local tools across the network), an ioctl would have
to be
- used by more than one local filesystem
- not have an equivalent way to do the same thing without an ioctl

I have added the GET/SETFLAGS client support, but am not aware of any
others which would need to be remoted. For fcntl there are more, but
it requires more research to figure out how to handle setlease/getlease
and a few others with network implications without degrading
performance. Although I am not a fan of ioctls and fcntls, there are a
few that are necessary to achieve 100% local semantics across the network.

The new inotify mechanism being prototyped in -mm currently is the other
one which needs work to determine how to map it across the network.
Since it was added for support of Samba, the corresponding client part
(for cifs) may turn out to map to the network protocol quite well
already, and given NFSv4 having various similarities to CIFS, it would
be interesting if the semantics of inotify would map to NFSv4 write
protocol.