blob: 8ed8c8b165d34e584990141e12eccefacbfc091e [file] [log] [blame]
# Copyright 2018 syzkaller project authors. All rights reserved.
# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
include <uapi/linux/mount.h>
include <linux/fs.h>
mount(src ptr[in, blockdev_filename], dst ptr[in, filename], type ptr[in, string[filesystem]], flags flags[mount_flags], data ptr[in, string, opt])
umount2(path ptr[in, filename], flags flags[umount_flags])
mount$bpf(src const[0], dst ptr[in, filename], type ptr[in, string["bpf"]], flags flags[mount_flags], opts ptr[in, fs_options[bpf_options]])
mount$overlay(src const[0], dst ptr[in, filename], type ptr[in, string["overlay"]], flags flags[mount_flags], opts ptr[in, fs_options[overlay_options]])
filesystem = "sysfs", "rootfs", "ramfs", "tmpfs", "devtmpfs", "debugfs", "securityfs", "sockfs", "pipefs", "anon_inodefs", "devpts", "ext3", "ext2", "ext4", "hugetlbfs", "vfat", "ecryptfs", "fuseblk", "fuse", "rpc_pipefs", "nfs", "nfs4", "nfsd", "binfmt_misc", "autofs", "xfs", "jfs", "msdos", "ntfs", "minix", "hfs", "hfsplus", "qnx4", "ufs", "btrfs", "configfs", "ncpfs", "qnx6", "exofs", "befs", "vxfs", "gfs2", "gfs2meta", "fusectl", "bfs", "nsfs", "efs", "cifs", "efivarfs", "affs", "tracefs", "bdev", "ocfs2", "ocfs2_dlmfs", "hpfs", "proc", "afs", "reiserfs", "jffs2", "romfs", "aio", "sysv", "v7", "udf", "ceph", "pstore", "adfs", "9p", "hostfs", "squashfs", "cramfs", "iso9660", "coda", "nilfs2", "logfs", "overlay", "f2fs", "omfs", "ubifs", "openpromfs", "bpf", "cgroup", "cgroup2", "cpuset", "mqueue", "aufs", "selinuxfs", "dax", "erofs"
blockdev_filename [
filename filename
nbd nbd_filename
loop loop_filename
nullb string["/dev/nullb0"]
md0 string["/dev/md0"]
sg0 string["/dev/sg0"]
sr0 string["/dev/sr0"]
] [varlen]
nbd_filename {
prefix stringnoz["/dev/nbd"]
id proc['0', 1, int8]
z const[0, int8]
} [packed]
loop_filename {
prefix stringnoz["/dev/loop"]
id proc['0', 1, int8]
z const[0, int8]
} [packed]
syz_read_part_table(size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]])
syz_mount_image$vfat(fs ptr[in, string["vfat"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[vfat_options]])
syz_mount_image$msdos(fs ptr[in, string["msdos"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[msdos_options]])
syz_mount_image$bfs(fs ptr[in, string["bfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts const[0])
syz_mount_image$xfs(fs ptr[in, string["xfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[xfs_options]])
syz_mount_image$minix(fs ptr[in, string["minix"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts const[0])
syz_mount_image$reiserfs(fs ptr[in, string["reiserfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[reiserfs_options]])
syz_mount_image$hfs(fs ptr[in, string["hfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[hfs_options]])
syz_mount_image$hfsplus(fs ptr[in, string["hfsplus"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[hfsplus_options]])
syz_mount_image$iso9660(fs ptr[in, string["iso9660"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[iso9660_options]])
syz_mount_image$gfs2(fs ptr[in, string["gfs2"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[gfs2_options]])
syz_mount_image$jfs(fs ptr[in, string["jfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[jfs_options]])
syz_mount_image$btrfs(fs ptr[in, string["btrfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[btrfs_options]])
syz_mount_image$ntfs(fs ptr[in, string["ntfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[ntfs_options]])
syz_mount_image$ext4(fs ptr[in, string[ext4_types]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[ext4_options]])
ext4_types = "ext4", "ext3", "ext2"
syz_mount_image$f2fs(fs ptr[in, string["f2fs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[f2fs_options]])
syz_mount_image$ocfs2(fs ptr[in, string["ocfs2"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, string])
syz_mount_image$nfs(fs ptr[in, string["nfs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, string])
syz_mount_image$nfs4(fs ptr[in, string["nfs4"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, string])
syz_mount_image$cifs(fs ptr[in, string["cifs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, string])
syz_mount_image$ceph(fs ptr[in, string["ceph"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, string])
syz_mount_image$erofs(fs ptr[in, string["erofs"]], dir ptr[in, filename], size intptr, nsegs len[segments], segments ptr[in, array[fs_image_segment]], flags flags[mount_flags], opts ptr[in, fs_options[erofs_options]])
fs_image_segment {
data ptr[in, array[int8]]
size len[data, intptr]
offset intptr
}
type fs_options[ELEMS] {
elems array[fs_opt_elem[ELEMS]]
security array[fs_opt_elem[fs_options_security]]
null const[0, int8]
} [packed]
type fs_opt_elem[ELEMS] {
elem ELEMS
comma const[',', int8]
} [packed]
type fs_opt[NAME, TYPE] {
name stringnoz[NAME]
eq const['=', int8]
val TYPE
} [packed]
type fs_opt_nodelim[NAME, TYPE] {
name stringnoz[NAME]
val TYPE
} [packed]
type fs_opt_str[NAME] fs_opt[NAME, stringnoz]
type fs_opt_dec[NAME, VAL] fs_opt[NAME, fmt[dec, VAL]]
type fs_opt_hex[NAME, VAL] fs_opt[NAME, fmt[hex, VAL]]
type fs_opt_oct[NAME, VAL] fs_opt[NAME, fmt[oct, VAL]]
type fs_opt_dec_suffix[NAME] fs_opt[NAME, array[flags[fs_opt_digits_suffix, int8]]]
type fs_opt_filename[NAME] fs_opt[NAME, stringnoz[filename]]
type fs_opt_codepage[NAME] fs_opt[NAME, stringnoz[codepages_names]]
type fs_opt_cp_num[NAME] fs_opt[NAME, stringnoz[codepage_nums]]
fs_opt_digits_suffix = '-', 'x', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'k', 'm', 'g', 't', 'p', 'e'
fs_options_security [
# SELinux options:
context fs_opt["context", stringnoz[selinux_user_context]]
fscontext fs_opt["fscontext", stringnoz[selinux_user_context]]
rootcontext fs_opt["rootcontext", stringnoz[selinux_user_context]]
defcontext fs_opt["defcontext", stringnoz[selinux_user_context]]
seclabel stringnoz["seclabel"]
# Smack options:
smackfsdef fs_opt_str["smackfsdef"]
smackfsfloor fs_opt_str["smackfsfloor"]
smackfshat fs_opt_str["smackfshat"]
smackfsroot fs_opt_str["smackfsroot"]
smackfstransmute fs_opt_str["smackfstransmute"]
# IMA options:
measure stringnoz["measure"]
dont_measure stringnoz["dont_measure"]
appraise stringnoz["appraise"]
dont_appraise stringnoz["dont_appraise"]
audit stringnoz["audit"]
hash stringnoz["hash"]
dont_hash stringnoz["dont_hash"]
permit_directio stringnoz["permit_directio"]
obj_user fs_opt_str["obj_user"]
obj_role fs_opt_str["obj_role"]
obj_type fs_opt_str["obj_type"]
subj_user fs_opt_str["subj_user"]
subj_role fs_opt_str["subj_role"]
subj_type fs_opt_str["subj_type"]
func fs_opt["func", stringnoz[ima_funcs]]
mask fs_opt["mask", stringnoz[ima_masks]]
fsmagic fs_opt_hex["fsmagic", intptr]
fsname fs_opt_str["fsname"]
fsuuid fs_opt["fsuuid", uuid_str]
uid_eq fs_opt_dec["uid", uid]
euid_eq fs_opt_dec["euid", uid]
fowner_eq fs_opt_dec["fowner", uid]
uid_gt fs_opt_nodelim["uid>", fmt[dec, uid]]
euid_gt fs_opt_nodelim["euid>", fmt[dec, uid]]
fowner_gt fs_opt_nodelim["fowner>", fmt[dec, uid]]
uid_lt fs_opt_nodelim["uid<", fmt[dec, uid]]
euid_lt fs_opt_nodelim["euid<", fmt[dec, uid]]
fowner_lt fs_opt_nodelim["fowner<", fmt[dec, uid]]
appraise_type stringnoz["appraise_type=imasig"]
pcr fs_opt_dec["pcr", int64[0:64]]
] [varlen]
uuid_str {
p0 array[flags[hex_chars, int8], 8]
d0 const['-', int8]
p1 array[flags[hex_chars, int8], 4]
d1 const['-', int8]
p2 array[flags[hex_chars, int8], 4]
d2 const['-', int8]
p3 array[flags[hex_chars, int8], 4]
d3 const['-', int8]
p4 array[flags[hex_chars, int8], 8]
}
hex_chars = '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'
ima_funcs = "FILE_CHECK", "PATH_CHECK", "MODULE_CHECK", "FIRMWARE_CHECK", "FILE_MMAP", "MMAP_CHECK", "BPRM_CHECK", "CREDS_CHECK", "KEXEC_KERNEL_CHECK", "KEXEC_INITRAMFS_CHECK", "POLICY_CHECK"
ima_masks = "MAY_EXEC", "MAY_WRITE", "MAY_READ", "MAY_APPEND", "^MAY_EXEC", "^MAY_WRITE", "^MAY_READ", "^MAY_APPEND"
msdos_options [
fat fat_options
nodots stringnoz["nodots"]
dots stringnoz["dots"]
] [varlen]
vfat_options [
fat fat_options
iocharset fs_opt_codepage["iocharset"]
rodir stringnoz["rodir"]
utf8no stringnoz["utf8=0"]
utf8 stringnoz["utf8=1"]
uni_xlateno stringnoz["uni_xlate=0"]
uni_xlate stringnoz["uni_xlate=1"]
numtail stringnoz["nonumtail=0"]
nonumtail stringnoz["nnonumtail=1"]
shortname_lower stringnoz["shortname=lower"]
shortname_win95 stringnoz["shortname=win95"]
shortname_winnt stringnoz["shortname=winnt"]
shortname_mixed stringnoz["shortname=mixed"]
] [varlen]
fat_options [
check_relaxed stringnoz["check=relaxed"]
check_strict stringnoz["check=strict"]
check_normal stringnoz["check=normal"]
usefree stringnoz["usefree"]
nocase stringnoz["nocase"]
quiet stringnoz["quiet"]
showexec stringnoz["showexec"]
debug stringnoz["debug"]
sys_immutable stringnoz["sys_immutable"]
flush stringnoz["flush"]
tz_utc stringnoz["tz=UTC"]
errors_continue stringnoz["errors=continue"]
errors_remount stringnoz["errors=remount-ro"]
discard stringnoz["discard"]
nfs stringnoz["nfs"]
nfs_nostale_ro stringnoz["nfs=nostale_ro"]
dos1xfloppy stringnoz["dos1xfloppy"]
uid fs_opt_hex["uid", uid]
gid fs_opt_hex["gid", gid]
umask fs_opt_oct["umask", int32]
dmask fs_opt_oct["dmask", int32]
fmask fs_opt_oct["fmask", int32]
allow_utime fs_opt_oct["allow_utime", int32]
time_offset fs_opt_hex["time_offset", int32[-1440:1440]]
codepage fs_opt_cp_num["codepage"]
] [varlen]
xfs_options [
wsync stringnoz["wsync"]
noalign stringnoz["noalign"]
swalloc stringnoz["swalloc"]
nouuid stringnoz["nouuid"]
mtpt stringnoz["mtpt"]
grpid stringnoz["grpid"]
nogrpid stringnoz["nogrpid"]
bsdgroups stringnoz["bsdgroups"]
sysvgroups stringnoz["sysvgroups"]
norecovery stringnoz["norecovery"]
inode64 stringnoz["inode64"]
inode32 stringnoz["inode32"]
ikeep stringnoz["ikeep"]
noikeep stringnoz["noikeep"]
largeio stringnoz["largeio"]
nolargeio stringnoz["nolargeio"]
attr2 stringnoz["attr2"]
noattr2 stringnoz["noattr2"]
filestreams stringnoz["filestreams"]
quota stringnoz["quota"]
noquota stringnoz["noquota"]
lazytime stringnoz["lazytime"]
nolazytime stringnoz["nolazytime"]
usrquota stringnoz["usrquota"]
grpquota stringnoz["grpquota"]
prjquota stringnoz["prjquota"]
uquota stringnoz["uquota"]
gquota stringnoz["gquota"]
pquota stringnoz["pquota"]
uqnoenforce stringnoz["uqnoenforce"]
gqnoenforce stringnoz["gqnoenforce"]
pqnoenforce stringnoz["pqnoenforce"]
qnoenforce stringnoz["qnoenforce"]
discard stringnoz["discard"]
nodiscard stringnoz["nodiscard"]
dax stringnoz["dax"]
barrier stringnoz["barrier"]
nobarrier stringnoz["nobarrier"]
logbufs fs_opt_dec["logbufs", int32[-1:8]]
biosize fs_opt_dec["biosize", int32]
sunit fs_opt_hex["sunit", int32]
swidth fs_opt_hex["swidth", int32]
logbsize fs_opt_dec_suffix["logbsize"]
allocsize fs_opt_dec_suffix["allocsize"]
logdev fs_opt_filename["logdev"]
rtdev fs_opt_filename["rtdev"]
] [varlen]
reiserfs_options [
tails_on stringnoz["tails=on"]
tails_off stringnoz["tails=off"]
tails_small stringnoz["tails=small"]
notail stringnoz["notail"]
conv stringnoz["conv"]
noattrs stringnoz["noattrs"]
expose_privroot stringnoz["expose_privroot"]
user_xattr stringnoz["user_xattr"]
nouser_xattr stringnoz["nouser_xattr"]
acl stringnoz["acl"]
noacl stringnoz["noacl"]
replayonly stringnoz["replayonly"]
nolargeio stringnoz["nolargeio"]
usrquota stringnoz["usrquota"]
grpquota stringnoz["grpquota"]
noquota stringnoz["noquota"]
usrjquota stringnoz["usrjquota"]
usrjquota_file stringnoz["usrjquota=syz"]
grpjquota stringnoz["grpjquota"]
commit fs_opt_hex["commit", int32]
resize fs_opt_hex["resize", int32]
resize_auto stringnoz["resize=auto"]
jdev fs_opt_filename["jdev"]
jqfmt_vfsold stringnoz["jqfmt=vfsold"]
jqfmt_vfsv0 stringnoz["jqfmt=vfsv0"]
hash_tea stringnoz["hash=tea"]
hash_rupasov stringnoz["hash=rupasov"]
hash_r5 stringnoz["hash=r5"]
balloc_noborder stringnoz["block-allocator=noborder"]
balloc_border stringnoz["block-allocator=border"]
balloc_no_unhash_reloc stringnoz["block-allocator=no_unhashed_relocation"]
balloc_hashed_reloc stringnoz["block-allocator=hashed_relocation"]
balloc_test4 stringnoz["block-allocator=test4"]
balloc_notest4 stringnoz["block-allocator=notest4"]
barrier_none stringnoz["barrier=none"]
barrier_flush stringnoz["barrier=flush"]
data_ordered stringnoz["data=ordered"]
data_journal stringnoz["data=journal"]
data_writeback stringnoz["data=writeback"]
errors_continue stringnoz["errors=continue"]
errors_ro_remount stringnoz["errors=ro-remount"]
] [varlen]
hfs_options [
quiet stringnoz["quiet"]
umask fs_opt_oct["umask", int32]
file_umask fs_opt_oct["file_umask", int32]
dir_umask fs_opt_oct["dir_umask", int32]
uid fs_opt_hex["uid", uid]
gid fs_opt_hex["gid", gid]
part fs_opt_hex["part", int32]
session fs_opt_hex["session", int32]
type fs_opt["type", array[int8, 4]]
creator fs_opt["creator", array[int8, 4]]
codepage fs_opt_codepage["codepage"]
iocharset fs_opt_codepage["iocharset"]
] [varlen]
hfsplus_options [
decompose stringnoz["decompose"]
nodecompose stringnoz["nodecompose"]
barrier stringnoz["barrier"]
nobarrier stringnoz["nobarrier"]
force stringnoz["force"]
umask fs_opt_oct["umask", int32]
type fs_opt["type", array[int8, 4]]
creator fs_opt["creator", array[int8, 4]]
uid fs_opt_hex["uid", uid]
gid fs_opt_hex["gid", gid]
part fs_opt_hex["part", int32]
session fs_opt_hex["session", int32]
nls fs_opt_codepage["nls"]
] [varlen]
iso9660_options [
norock stringnoz["norock"]
nojoliet stringnoz["nojoliet"]
unhide stringnoz["unhide"]
hide stringnoz["hide"]
cruft stringnoz["cruft"]
utf8 stringnoz["utf8"]
map_acorn stringnoz["map=acorn"]
map_normal stringnoz["map=normal"]
map_off stringnoz["map=off"]
check_relaxed stringnoz["check=relaxed"]
check_strict stringnoz["check=strict"]
overriderock stringnoz["overriderockperm"]
nocompress stringnoz["nocompress"]
session fs_opt_hex["session", int32[0:98]]
sbsector fs_opt_hex["sbsector", int32]
uid fs_opt_hex["uid", uid]
gid fs_opt_hex["gid", gid]
mode fs_opt_hex["mode", int32]
dmode fs_opt_hex["dmode", int32]
block fs_opt_hex["block", flags[iso9660_blocks]]
iocharset fs_opt_codepage["iocharset"]
] [varlen]
iso9660_blocks = 512, 1024, 2048
gfs2_options [
spectator stringnoz["spectator"]
norecovery stringnoz["norecovery"]
ignore_local_fs stringnoz["ignore_local_fs"]
localflocks stringnoz["localflocks"]
localcaching stringnoz["localcaching"]
upgrade stringnoz["upgrade"]
acl stringnoz["acl"]
noacl stringnoz["noacl"]
quota_off stringnoz["quota=off"]
quota_account stringnoz["quota=account"]
quota_on stringnoz["quota=on"]
quota stringnoz["quota"]
noquota stringnoz["noquota"]
suiddir stringnoz["suiddir"]
nosuiddir stringnoz["nosuiddir"]
data_writeback stringnoz["data=writeback"]
data_ordered stringnoz["data=ordered"]
meta stringnoz["meta"]
discard stringnoz["discard"]
nodiscard stringnoz["nodiscard"]
errors_withdraw stringnoz["errors=withdraw"]
barrier stringnoz["barrier"]
nobarrier stringnoz["nobarrier"]
rgrplvb stringnoz["rgrplvb"]
norgrplvb stringnoz["norgrplvb"]
loccookie stringnoz["loccookie"]
noloccookie stringnoz["noloccookie"]
commit fs_opt_hex["commit", int32]
statfs_quantum fs_opt_hex["statfs_quantum", int32]
statfs_percent fs_opt_hex["statfs_percent", int32]
quota_quantum fs_opt_hex["quota_quantum", int32]
lockproto_dlm stringnoz["lockproto=dlm"]
lockproto_nolock stringnoz["lockproto=lock_nolock"]
locktable fs_opt_str["locktable"]
hostdata fs_opt_str["hostdata"]
] [varlen]
jfs_options [
integrity stringnoz["integrity"]
nointegrity stringnoz["nointegrity"]
resize stringnoz["resize"]
noquota stringnoz["noquota"]
quota stringnoz["quota"]
usrquota stringnoz["usrquota"]
grpquota stringnoz["grpquota"]
discard stringnoz["discard"]
nodiscard stringnoz["nodiscard"]
iocharset fs_opt_codepage["iocharset"]
errors_continue stringnoz["errors=continue"]
errors_remount stringnoz["errors=remount-ro"]
resize_size fs_opt_hex["resize", int32]
uid fs_opt_hex["uid", uid]
gid fs_opt_hex["gid", gid]
umask fs_opt_hex["umask", int32]
discard_size fs_opt_hex["discard", int32]
] [varlen]
btrfs_options [
degraded stringnoz["degraded"]
nodatasum stringnoz["nodatasum"]
datasum stringnoz["datasum"]
nodatacow stringnoz["nodatacow"]
datacow stringnoz["datacow"]
nobarrier stringnoz["nobarrier"]
barrier stringnoz["barrier"]
compress stringnoz["compress"]
compress_force stringnoz["compress-force"]
ssd stringnoz["ssd"]
ssd_spread stringnoz["ssd_spread"]
nossd_spread stringnoz["nossd_spread"]
nossd stringnoz["nossd"]
acl stringnoz["acl"]
noacl stringnoz["noacl"]
notreelog stringnoz["notreelog"]
treelog stringnoz["treelog"]
flushoncommit stringnoz["flushoncommit"]
noflushoncommit stringnoz["noflushoncommit"]
discard stringnoz["discard"]
nodiscard stringnoz["nodiscard"]
space_cache stringnoz["space_cache"]
clear_cache stringnoz["clear_cache"]
user_subvol_rm stringnoz["user_subvol_rm_allowed"]
enospc_debug stringnoz["enospc_debug"]
noenospc_debug stringnoz["noenospc_debug"]
autodefrag stringnoz["autodefrag"]
noautodefrag stringnoz["noautodefrag"]
inode_cache stringnoz["inode_cache"]
noinode_cache stringnoz["noinode_cache"]
nospace_cache stringnoz["nospace_cache"]
usebackuproot stringnoz["usebackuproot"]
skip_balance stringnoz["skip_balance"]
check_int stringnoz["check_int"]
check_int_data stringnoz["check_int_data"]
rescan_uuid_tree stringnoz["rescan_uuid_tree"]
fragment_data stringnoz["fragment=data"]
fragment_metadata stringnoz["fragment=metadata"]
fragment_all stringnoz["fragment=all"]
ref_verify stringnoz["ref_verify"]
metadata_ratio fs_opt_hex["metadata_ratio", int32]
check_int_print_mask fs_opt_hex["check_int_print_mask", int32]
commit fs_opt_hex["commit", int32]
thread_pool fs_opt_hex["thread_pool", int32]
device fs_opt_filename["device"]
subvolid fs_opt_hex["subvolid", int64]
subvol fs_opt_str["subvol"]
max_inline fs_opt_dec_suffix["max_inline"]
compress_algo fs_opt["compress", stringnoz[btrfs_compress_algos]]
compress_force_algo fs_opt["compress-force", stringnoz[btrfs_compress_algos]]
space_cache_v1 stringnoz["space_cache=v1"]
space_cache_v2 stringnoz["space_cache=v2"]
] [varlen]
btrfs_compress_algos = "zlib", "lzo", "zstd", "no"
ntfs_options [
uid fs_opt_hex["uid", uid]
gid fs_opt_hex["gid", gid]
umask fs_opt_oct["umask", int32]
fmask fs_opt_oct["fmask", int32]
dmask fs_opt_oct["dmask", int32]
mft_zone_multiplier fs_opt_hex["mft_zone_multiplier", int32[-1:4]]
show_sys_files_no stringnoz["show_sys_files=no"]
show_sys_files_yes stringnoz["show_sys_files=yes"]
case_sensitive_no stringnoz["case_sensitive=no"]
case_sensitive_yes stringnoz["case_sensitive=yes"]
disable_sparse_no stringnoz["disable_sparse=no"]
disable_sparse_yes stringnoz["disable_sparse=yes"]
errors_remount stringnoz["errors=remount-ro"]
errors_continue stringnoz["errors=continue"]
errors_recover stringnoz["errors=recover"]
nls fs_opt_codepage["nls"]
utf8 stringnoz["utf8"]
] [varlen]
ext4_options [
bsddf stringnoz["bsddf"]
minixdf stringnoz["minixdf"]
grpid stringnoz["grpid"]
bsdgroups stringnoz["bsdgroups"]
nogrpid stringnoz["nogrpid"]
sysvgroups stringnoz["sysvgroups"]
errors_continue stringnoz["errors=continue"]
errors_remount stringnoz["errors=remount-ro"]
nouid32 stringnoz["nouid32"]
debug stringnoz["debug"]
oldalloc stringnoz["oldalloc"]
orlov stringnoz["orlov"]
user_xattr stringnoz["user_xattr"]
nouser_xattr stringnoz["nouser_xattr"]
acl stringnoz["acl"]
noacl stringnoz["noacl"]
norecovery stringnoz["norecovery"]
noload stringnoz["noload"]
nobh stringnoz["nobh"]
bh stringnoz["bh"]
journal_checksum stringnoz["journal_checksum"]
nojournal_checksum stringnoz["nojournal_checksum"]
journal_async_commit stringnoz["journal_async_commit"]
abort stringnoz["abort"]
data_journal stringnoz["data=journal"]
data_ordered stringnoz["data=ordered"]
data_writeback stringnoz["data=writeback"]
data_err_abort stringnoz["data_err=abort"]
data_err_ignore stringnoz["data_err=ignore"]
usrjquota stringnoz["usrjquota="]
grpjquota stringnoz["grpjquota="]
jqfmt_vfsold stringnoz["jqfmt=vfsold"]
jqfmt_vfsv0 stringnoz["jqfmt=vfsv0"]
jqfmt_vfsv1 stringnoz["jqfmt=vfsv1"]
grpquota stringnoz["grpquota"]
noquota stringnoz["noquota"]
quota stringnoz["quota"]
usrquota stringnoz["usrquota"]
prjquota stringnoz["prjquota"]
barrier stringnoz["barrier"]
nobarrier stringnoz["nobarrier"]
i_version stringnoz["i_version"]
dax stringnoz["dax"]
delalloc stringnoz["delalloc"]
lazytime stringnoz["lazytime"]
nolazytime stringnoz["nolazytime"]
nodelalloc stringnoz["nodelalloc"]
mblk_io_submit stringnoz["mblk_io_submit"]
nomblk_io_submit stringnoz["nomblk_io_submit"]
block_validity stringnoz["block_validity"]
noblock_validity stringnoz["noblock_validity"]
auto_da_alloc stringnoz["auto_da_alloc"]
noauto_da_alloc stringnoz["noauto_da_alloc"]
dioread_nolock stringnoz["dioread_nolock"]
dioread_lock stringnoz["dioread_lock"]
discard stringnoz["discard"]
nodiscard stringnoz["nodiscard"]
init_itable stringnoz["init_itable"]
noinit_itable stringnoz["noinit_itable"]
test_dummy_encryption stringnoz["test_dummy_encryption"]
nombcache stringnoz["nombcache"]
resgid fs_opt_hex["resgid", gid]
resuid fs_opt_hex["resuid", uid]
sb fs_opt_hex["sb", int32]
commit fs_opt_hex["commit", int32]
min_batch_time fs_opt_hex["min_batch_time", int32]
max_batch_time fs_opt_hex["max_batch_time", int32]
journal_dev fs_opt_hex["journal_dev", int32]
barrier_val fs_opt_hex["barrier", int32]
stripe fs_opt_hex["stripe", int32]
debug_want_extra_isize fs_opt_hex["debug_want_extra_isize", int32]
inode_readahead_blks fs_opt_hex["inode_readahead_blks", flags[ext4_inode_readahead_blks]]
journal_ioprio fs_opt_hex["journal_ioprio", int32[0:7]]
auto_da_alloc_val fs_opt_hex["auto_da_alloc", int32]
init_itable_val fs_opt_hex["init_itable", int32]
max_dir_size_kb fs_opt_hex["max_dir_size_kb", int32]
journal_path fs_opt_filename["journal_path"]
grpjquota_path fs_opt_filename["grpjquota"]
usrjquota_path fs_opt_filename["usrjquota"]
] [varlen]
ext4_inode_readahead_blks = 0, 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 0x1000, 0x2000, 0x4000, 0x8000, 0x10000, 0x20000, 0x40000, 0x80000, 0x100000, 0x200000, 0x400000, 0x800000, 0x1000000, 0x2000000, 0x4000000, 0x8000000
f2fs_options [
background_gc_sync stringnoz["background_gc=sync"]
background_gc_off stringnoz["background_gc=off"]
background_gc_on stringnoz["background_gc=on"]
disable_roll_forward stringnoz["disable_roll_forward"]
norecovery stringnoz["norecovery"]
discard stringnoz["discard"]
nodiscard stringnoz["nodiscard"]
noheap stringnoz["noheap"]
heap stringnoz["heap"]
user_xattr stringnoz["user_xattr"]
nouser_xattr stringnoz["nouser_xattr"]
acl stringnoz["acl"]
noacl stringnoz["noacl"]
six_active_logs stringnoz["active_logs=6"]
four_active_logs stringnoz["active_logs=4"]
two_active_logs stringnoz["active_logs=2"]
disable_ext_identify stringnoz["disable_ext_identify"]
inline_xattr stringnoz["inline_xattr"]
noinline_xattr stringnoz["noinline_xattr"]
inline_xattr_size fs_opt_hex["inline_xattr_size", int32]
inline_data stringnoz["inline_data"]
noinline_data stringnoz["noinline_data"]
inline_dentry stringnoz["inline_dentry"]
noinline_dentry stringnoz["noinline_dentry"]
flush_merge stringnoz["flush_merge"]
noflush_merge stringnoz["noflush_merge"]
nobarrier stringnoz["nobarrier"]
fastboot stringnoz["fastboot"]
extent_cache stringnoz["extent_cache"]
noextent_cache stringnoz["noextent_cache"]
data_flush stringnoz["data_flush"]
adaptive_mode stringnoz["mode=adaptive"]
lfs_mode stringnoz["mode=lfs"]
resgid fs_opt_hex["resgid", gid]
resuid fs_opt_hex["resuid", uid]
lazytime stringnoz["lazytime"]
nolazytime stringnoz["nolazytime"]
quota stringnoz["quota"]
noquota stringnoz["noquota"]
usrquota fs_opt_str["usrquota"]
grpquota fs_opt_str["grpquota"]
prjquota fs_opt_str["prjquota"]
usrjquota fs_opt_str["usrjquota"]
grpjquota fs_opt_str["grpjquota"]
prjjquota fs_opt_str["prjjquota"]
jqfmt_vfsold stringnoz["jqfmt=vfsold"]
jqfmt_vfsv0 stringnoz["jqfmt=vfsv0"]
jqfmt_vfsv1 stringnoz["jqfmt=vfsv1"]
whint_mode_user stringnoz["whint_mode=user-based"]
whint_mode_off stringnoz["whint_mode=off"]
whint_mode_fs stringnoz["whint_mode=fs-based"]
alloc_mode_def stringnoz["alloc_mode=default"]
alloc_mode_reuse stringnoz["alloc_mode=reuse"]
fsync_mode_posix stringnoz["fsync_mode=posix"]
fsync_mode_strict stringnoz["fsync_mode=strict"]
test_dummy_encryption stringnoz["test_dummy_encryption"]
] [varlen]
bpf_options [
mode fs_opt_oct["mode", int32]
] [varlen]
overlay_options [
lowerdir fs_opt_filename["lowerdir"]
upperdir fs_opt_filename["upperdir"]
workdir fs_opt_filename["workdir"]
redirect_dir fs_opt_filename["redirect_dir"]
default_permissions stringnoz["default_permissions"]
index_on stringnoz["index=on"]
index_off stringnoz["index=off"]
nfs_export_on stringnoz["nfs_export=on"]
nfs_export_off stringnoz["nfs_export=off"]
xino_on stringnoz["xino=on"]
xino_off stringnoz["xino=off"]
xino_auto stringnoz["xino=auto"]
metacopy_on stringnoz["metacopy=on"]
metacopy_off stringnoz["metacopy=off"]
] [varlen]
erofs_options [
user_xattr stringnoz["user_xattr"]
nouser_xattr stringnoz["nouser_xattr"]
acl stringnoz["acl"]
noacl stringnoz["noacl"]
fault_injection fs_opt_hex["fault_injection", int32]
] [varlen]
codepage_nums = "1250", "1251", "1255", "437", "737", "775", "850", "852", "855", "857", "860", "861", "862", "863", "864", "865", "866", "869", "874", "932", "936", "949", "950"
codepages_names = "macceltic", "maccenteuro", "maccroatian", "maccyrillic", "macgaelic", "macgreek", "maciceland", "macinuit", "macroman", "macromanian", "macturkish", "ascii", "default", "cp1250", "cp1251", "cp1255", "cp437", "cp737", "cp775", "cp850", "cp852", "cp855", "cp857", "cp860", "cp861", "cp862", "cp863", "cp864", "cp865", "cp866", "cp869", "cp874", "cp932", "cp936", "cp949", "cp950", "euc-jp", "iso8859-13", "iso8859-14", "iso8859-15", "iso8859-1", "iso8859-2", "iso8859-3", "iso8859-4", "iso8859-5", "iso8859-6", "iso8859-7", "iso8859-9", "koi8-r", "koi8-ru", "koi8-u", "utf8", "none"
mount_flags = MS_BIND, MS_DIRSYNC, MS_MANDLOCK, MS_MOVE, MS_NOATIME, MS_NODEV, MS_NODIRATIME, MS_NOEXEC, MS_NOSUID, MS_RDONLY, MS_RELATIME, MS_REMOUNT, MS_SILENT, MS_STRICTATIME, MS_SYNCHRONOUS, MS_REC, MS_POSIXACL, MS_UNBINDABLE, MS_PRIVATE, MS_SLAVE, MS_SHARED, MS_I_VERSION, MS_LAZYTIME
umount_flags = MNT_FORCE, MNT_DETACH, MNT_EXPIRE, UMOUNT_NOFOLLOW