mirror of
https://github.com/kdave/btrfs-progs
synced 2024-12-23 22:53:35 +00:00
bc2c60ad31
Start documenting the ioctl interface to btrfs. The overall structure should be settled, the formatting of the ioctl description may change in the future, newly added ioctl descriptions should follow the examples of BTRFS_IOC_SUBVOL_CREATE. The document is not finished yet and will not be installed until most of ioctls' details are filled in. Signed-off-by: David Sterba <dsterba@suse.com>
141 lines
3.0 KiB
Plaintext
141 lines
3.0 KiB
Plaintext
btrfs-ioctl(3)
|
|
================
|
|
|
|
NAME
|
|
----
|
|
|
|
btrfs-ioctl - documentation for the ioctl interface to btrfs
|
|
|
|
DATA STRUCTURES AND DEFINITIONS
|
|
-------------------------------
|
|
|
|
[verse]
|
|
struct btrfs_ioctl_vol_args {
|
|
__s64 fd;
|
|
char name[BTRFS_PATH_NAME_MAX + 1];
|
|
};
|
|
|
|
[verse]
|
|
struct btrfs_ioctl_vol_args_v2 {
|
|
\__s64 fd;
|
|
\__u64 transid;
|
|
\__u64 flags;
|
|
union {
|
|
struct {
|
|
\__u64 size;
|
|
struct btrfs_qgroup_inherit \__user *qgroup_inherit;
|
|
};
|
|
__u64 unused[4];
|
|
};
|
|
char name[BTRFS_SUBVOL_NAME_MAX + 1];
|
|
};
|
|
|
|
[verse]
|
|
BTRFS_SUBVOL_NAME_MAX = 4039
|
|
BTRFS_PATH_NAME_MAX = 4087
|
|
|
|
LIST OF IOCTLS
|
|
--------------
|
|
|
|
BTRFS_IOC_SUBVOL_CREATE -- (obsolete) create a subvolume
|
|
BTRFS_IOC_SNAP_CREATE
|
|
BTRFS_IOC_DEFRAG
|
|
BTRFS_IOC_RESIZE
|
|
BTRFS_IOC_SCAN_DEV
|
|
BTRFS_IOC_TRANS_START
|
|
BTRFS_IOC_TRANS_END
|
|
BTRFS_IOC_SYNC
|
|
BTRFS_IOC_CLONE
|
|
BTRFS_IOC_ADD_DEV
|
|
BTRFS_IOC_RM_DEV
|
|
BTRFS_IOC_BALANCE
|
|
BTRFS_IOC_CLONE_RANGE
|
|
BTRFS_IOC_SUBVOL_CREATE
|
|
BTRFS_IOC_SNAP_DESTROY
|
|
BTRFS_IOC_DEFRAG_RANGE
|
|
BTRFS_IOC_TREE_SEARCH
|
|
BTRFS_IOC_TREE_SEARCH_V2
|
|
BTRFS_IOC_INO_LOOKUP
|
|
BTRFS_IOC_DEFAULT_SUBVOL
|
|
BTRFS_IOC_SPACE_INFO
|
|
BTRFS_IOC_START_SYNC
|
|
BTRFS_IOC_WAIT_SYNC
|
|
BTRFS_IOC_SNAP_CREATE_V2
|
|
BTRFS_IOC_SUBVOL_CREATE_V2 -- create a subvolume
|
|
BTRFS_IOC_SUBVOL_GETFLAGS
|
|
BTRFS_IOC_SUBVOL_SETFLAGS
|
|
BTRFS_IOC_SCRUB
|
|
BTRFS_IOC_SCRUB_CANCEL
|
|
BTRFS_IOC_SCRUB_PROGRESS
|
|
BTRFS_IOC_DEV_INFO
|
|
BTRFS_IOC_FS_INFO
|
|
BTRFS_IOC_BALANCE_V2
|
|
BTRFS_IOC_BALANCE_CTL
|
|
BTRFS_IOC_BALANCE_PROGRESS
|
|
BTRFS_IOC_INO_PATHS
|
|
BTRFS_IOC_LOGICAL_INO
|
|
BTRFS_IOC_SET_RECEIVED_SUBVOL
|
|
BTRFS_IOC_SEND
|
|
BTRFS_IOC_DEVICES_READY
|
|
BTRFS_IOC_QUOTA_CTL
|
|
BTRFS_IOC_QGROUP_ASSIGN
|
|
BTRFS_IOC_QGROUP_CREATE
|
|
BTRFS_IOC_QGROUP_LIMIT
|
|
BTRFS_IOC_QUOTA_RESCAN
|
|
BTRFS_IOC_QUOTA_RESCAN_STATUS
|
|
BTRFS_IOC_QUOTA_RESCAN_WAIT
|
|
BTRFS_IOC_GET_FSLABEL
|
|
BTRFS_IOC_SET_FSLABEL
|
|
BTRFS_IOC_GET_DEV_STATS
|
|
BTRFS_IOC_DEV_REPLACE
|
|
BTRFS_IOC_FILE_EXTENT_SAME
|
|
BTRFS_IOC_GET_FEATURES
|
|
BTRFS_IOC_SET_FEATURES
|
|
BTRFS_IOC_GET_SUPPORTED_FEATURES
|
|
|
|
DETAILED DESCRIPTION
|
|
--------------------
|
|
|
|
BTRFS_IOC_SUBVOL_CREATE
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
NOTE: obsoleted by BTRFS_IOC_SUBVOL_CREATE_V2
|
|
|
|
_(since: 3.0, obsoleted: 4.0)_ Create a subvolume.
|
|
|
|
ioctl fd:: file descriptor of the parent directory of the new subvolume
|
|
argument:: struct btrfs_ioctl_vol_args
|
|
fd:: ignored
|
|
name:: name of the subvolume, although the buffer can be almost 4k, the file
|
|
size is limited by linux VFS to 255 characters and must not contain a slash
|
|
('/')
|
|
|
|
|
|
BTRFS_IOC_SUBVOL_CREATE_V2
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
NOTE: obsoletes BTRFS_IOC_SUBVOL_CREATE
|
|
|
|
_(since: 3.6)_ Create a subvolume, qgroup inheritance can be specified.
|
|
|
|
ioctl fd:: file descriptor of the parent directory of the new subvolume
|
|
argument:: struct btrfs_ioctl_vol_args_v2
|
|
fd:: ignored
|
|
transid:: ignored
|
|
flags:: ignored
|
|
size:: ...
|
|
qgroup_inherit:: ...
|
|
name:: name of the subvolume, although the buffer can be almost 4k, the file
|
|
size is limited by linux VFS to 255 characters and must not contain a slash
|
|
('/')
|
|
devid:: ...
|
|
|
|
|
|
AVAILABILITY
|
|
------------
|
|
*btrfs* is part of btrfs-progs.
|
|
Please refer to the btrfs wiki http://btrfs.wiki.kernel.org for
|
|
further details.
|
|
|
|
SEE ALSO
|
|
--------
|
|
`ioctl`(2)
|