On Mon, Feb 05, 2024 at 11:33:11PM -0500, Kent Overstreet wrote: > On Mon, Feb 05, 2024 at 08:20:10PM -0800, Randy Dunlap wrote: > > > > > > On 2/5/24 17:39, David Sterba wrote: > > > On Mon, Feb 05, 2024 at 05:43:37PM -0500, Kent Overstreet wrote: > > >> On Mon, Feb 05, 2024 at 02:27:32PM -0800, Darrick J. Wong wrote: > > >>> On Mon, Feb 05, 2024 at 03:05:15PM -0500, Kent Overstreet wrote: > > >>>> @@ -231,6 +235,7 @@ struct fsxattr { > > >>>> #define FS_IOC_SETFSLABEL _IOW(0x94, 50, char[FSLABEL_MAX]) > > >>>> #define FS_IOC_GETFSUUID _IOR(0x94, 51, struct fsuuid2) > > >>>> #define FS_IOC_SETFSUUID _IOW(0x94, 52, struct fsuuid2) > > >>>> +#define FS_IOC_GETFSSYSFSNAME _IOR(0x94, 53, struct fssysfsname) > > >>> > > >>> 0x94 is btrfs, don't add things to their "name" space. > > >> > > >> Can we please document this somewhere!? > > >> > > >> What, dare I ask, is the "namespace" I should be using? > > > > > > Grep for _IOCTL_MAGIC in include/uapi: > > > > > > uapi/linux/aspeed-lpc-ctrl.h:#define __ASPEED_LPC_CTRL_IOCTL_MAGIC 0xb2 > > > uapi/linux/aspeed-p2a-ctrl.h:#define __ASPEED_P2A_CTRL_IOCTL_MAGIC 0xb3 > > > uapi/linux/bt-bmc.h:#define __BT_BMC_IOCTL_MAGIC 0xb1 > > > uapi/linux/btrfs.h:#define BTRFS_IOCTL_MAGIC 0x94 > > > uapi/linux/f2fs.h:#define F2FS_IOCTL_MAGIC 0xf5 > > > uapi/linux/ipmi_bmc.h:#define __IPMI_BMC_IOCTL_MAGIC 0xB1 > > > uapi/linux/pfrut.h:#define PFRUT_IOCTL_MAGIC 0xEE > > > uapi/rdma/rdma_user_ioctl.h:#define IB_IOCTL_MAGIC RDMA_IOCTL_MAGIC > > > uapi/rdma/rdma_user_ioctl_cmds.h:#define RDMA_IOCTL_MAGIC 0x1b > > > > > > The label ioctls inherited the 0x94 namespace for backward > > > compatibility but as already said, it's the private namespace of btrfs. > > > > > > > or more generally, see Documentation/userspace-api/ioctl/ioctl-number.rst. > > > > For 0x94, it says: > > > > 0x94 all fs/btrfs/ioctl.h Btrfs filesystem > > and linux/fs.h some lifted to vfs/generic > > You guys keep giving the same info over and over again, instead of > anything that would be actually helpful... > > Does anyone know what the proper "namespace" is for new VFS level > ioctls? > > ...Anyone? I propose you use 0x15 (NAK) and add it to the Documentation/ as the official VFS ioctl namespace. ;) --D