sys/linux: add description for fsinfo

Added the description for the new fsinfo sys call (currently in
linux-next). Details about fsinfo can be seen in
https://lkml.kernel.org/linux-fsdevel/158454408854.2864823.5910520544515668590.stgit@warthog.procyon.org.uk/.
This commit is contained in:
Jiaheng Hu 2020-06-21 15:15:06 +00:00 committed by Eric Biggers
parent 349959fbca
commit 4b0871d90d
7 changed files with 187 additions and 0 deletions

View File

@ -52,6 +52,7 @@ include <uapi/linux/capability.h>
include <uapi/linux/seccomp.h>
include <uapi/linux/suspend_ioctls.h>
include <kernel/sched/sched.h>
include <uapi/linux/fsinfo.h>
resource fd[int32]: -1
resource fd_dir[fd]: AT_FDCWD
@ -361,6 +362,7 @@ sysfs$2(option const[2], fsindex intptr, fsname buffer[out])
sysfs$3(option const[3])
statfs(path ptr[in, filename], buf buffer[out])
fstatfs(fd fd, buf buffer[out])
fsinfo(dfd fd_dir, path ptr[in, filename], params ptr[in, fsinfo_params], params_size bytesize[params], buf buffer[out], buffer_size bytesize[buf])
uselib(lib ptr[in, filename])
init_module(mod ptr[in, string], len len[mod], args ptr[in, string])
@ -861,6 +863,15 @@ sched_attr {
sched_util_max int32
}
fsinfo_params {
resolve_flags flags[resolve_flags, int64]
at_flags flags[at_flags, int32]
flags flags[fsinfo_flags, int32]
request flags[fsinfo_attr_flags, int32]
Nth int32
Mth int32
}
sched_policy = SCHED_NORMAL, SCHED_FIFO, SCHED_RR, SCHED_BATCH, SCHED_IDLE, SCHED_DEADLINE
sched_attr_flags = SCHED_FLAG_RESET_ON_FORK, SCHED_FLAG_RECLAIM, SCHED_FLAG_DL_OVERRUN, SCHED_FLAG_KEEP_POLICY, SCHED_FLAG_KEEP_PARAMS, SCHED_FLAG_UTIL_CLAMP_MIN, SCHED_FLAG_UTIL_CLAMP_MAX, SCHED_FLAG_SUGOV
@ -983,6 +994,8 @@ fiemap_extent_flags = FIEMAP_EXTENT_LAST, FIEMAP_EXTENT_UNKNOWN, FIEMAP_EXTENT_D
getrandom_flags = GRND_NONBLOCK, GRND_RANDOM
clone_flags = CLONE_VM, CLONE_FS, CLONE_FILES, CLONE_SIGHAND, CLONE_PTRACE, CLONE_VFORK, CLONE_PARENT, CLONE_THREAD, CLONE_NEWNS, CLONE_SYSVSEM, CLONE_SETTLS, CLONE_PARENT_SETTID, CLONE_CHILD_CLEARTID, CLONE_UNTRACED, CLONE_CHILD_SETTID, CLONE_NEWCGROUP, CLONE_NEWUTS, CLONE_NEWIPC, CLONE_NEWUSER, CLONE_NEWPID, CLONE_NEWNET, CLONE_IO, CLONE_PIDFD, CLONE_NEWTIME
ptrace_peeksiginfo_flags = PTRACE_PEEKSIGINFO_SHARED
fsinfo_flags = FSINFO_FLAGS_QUERY_MASK, FSINFO_FLAGS_QUERY_PATH, FSINFO_FLAGS_QUERY_FD, FSINFO_FLAGS_QUERY_MOUNT
fsinfo_attr_flags = FSINFO_ATTR_STATFS, FSINFO_ATTR_IDS, FSINFO_ATTR_LIMITS, FSINFO_ATTR_SUPPORTS, FSINFO_ATTR_TIMESTAMP_INFO, FSINFO_ATTR_VOLUME_ID, FSINFO_ATTR_VOLUME_UUID, FSINFO_ATTR_VOLUME_NAME, FSINFO_ATTR_FEATURES, FSINFO_ATTR_SOURCE, FSINFO_ATTR_CONFIGURATION, FSINFO_ATTR_FS_STATISTICS, FSINFO_ATTR_FSINFO_ATTRIBUTE_INFO, FSINFO_ATTR_FSINFO_ATTRIBUTES, FSINFO_ATTR_MOUNT_INFO, FSINFO_ATTR_MOUNT_PATH, FSINFO_ATTR_MOUNT_POINT, FSINFO_ATTR_MOUNT_POINT_FULL, FSINFO_ATTR_MOUNT_TOPOLOGY, FSINFO_ATTR_MOUNT_CHILDREN, FSINFO_ATTR_MOUNT_ALL, FSINFO_ATTR_AFS_CELL_NAME, FSINFO_ATTR_AFS_SERVER_NAME, FSINFO_ATTR_AFS_SERVER_ADDRESSES
# adjtimex flags.
_ = STA_PLL, STA_PPSFREQ, STA_PPSTIME, STA_FLL, STA_INS, STA_DEL, STA_UNSYNC, STA_FREQHOLD, STA_PPSSIGNAL, STA_PPSJITTER, STA_PPSWANDER, STA_PPSERROR, STA_CLOCKERR, STA_NANO, STA_MODE, STA_CLK, STA_RONLY

View File

@ -108,6 +108,34 @@ FIONBIO = 21537
FIONCLEX = 21584
FIOQSIZE = 21600
FITHAW = 3221510264
FSINFO_ATTR_AFS_CELL_NAME = 768
FSINFO_ATTR_AFS_SERVER_ADDRESSES = 770
FSINFO_ATTR_AFS_SERVER_NAME = 769
FSINFO_ATTR_CONFIGURATION = 10
FSINFO_ATTR_FEATURES = 8
FSINFO_ATTR_FSINFO_ATTRIBUTES = 257
FSINFO_ATTR_FSINFO_ATTRIBUTE_INFO = 256
FSINFO_ATTR_FS_STATISTICS = 11
FSINFO_ATTR_IDS = 1
FSINFO_ATTR_LIMITS = 2
FSINFO_ATTR_MOUNT_ALL = 518
FSINFO_ATTR_MOUNT_CHILDREN = 517
FSINFO_ATTR_MOUNT_INFO = 512
FSINFO_ATTR_MOUNT_PATH = 513
FSINFO_ATTR_MOUNT_POINT = 514
FSINFO_ATTR_MOUNT_POINT_FULL = 515
FSINFO_ATTR_MOUNT_TOPOLOGY = 516
FSINFO_ATTR_SOURCE = 9
FSINFO_ATTR_STATFS = 0
FSINFO_ATTR_SUPPORTS = 3
FSINFO_ATTR_TIMESTAMP_INFO = 4
FSINFO_ATTR_VOLUME_ID = 5
FSINFO_ATTR_VOLUME_NAME = 7
FSINFO_ATTR_VOLUME_UUID = 6
FSINFO_FLAGS_QUERY_FD = 1
FSINFO_FLAGS_QUERY_MASK = 7
FSINFO_FLAGS_QUERY_MOUNT = 2
FSINFO_FLAGS_QUERY_PATH = 0
F_ADD_SEALS = 1033
F_DUPFD = 0
F_DUPFD_CLOEXEC = 1030
@ -588,6 +616,7 @@ __NR_fcntl = 55
__NR_fdatasync = 148
__NR_finit_module = 350
__NR_flock = 143
__NR_fsinfo = 442
__NR_fstat = 108
__NR_fstat64 = 197
__NR_fstatat64 = 300

View File

@ -108,6 +108,34 @@ FIONBIO = 21537
FIONCLEX = 21584
FIOQSIZE = 21600
FITHAW = 3221510264
FSINFO_ATTR_AFS_CELL_NAME = 768
FSINFO_ATTR_AFS_SERVER_ADDRESSES = 770
FSINFO_ATTR_AFS_SERVER_NAME = 769
FSINFO_ATTR_CONFIGURATION = 10
FSINFO_ATTR_FEATURES = 8
FSINFO_ATTR_FSINFO_ATTRIBUTES = 257
FSINFO_ATTR_FSINFO_ATTRIBUTE_INFO = 256
FSINFO_ATTR_FS_STATISTICS = 11
FSINFO_ATTR_IDS = 1
FSINFO_ATTR_LIMITS = 2
FSINFO_ATTR_MOUNT_ALL = 518
FSINFO_ATTR_MOUNT_CHILDREN = 517
FSINFO_ATTR_MOUNT_INFO = 512
FSINFO_ATTR_MOUNT_PATH = 513
FSINFO_ATTR_MOUNT_POINT = 514
FSINFO_ATTR_MOUNT_POINT_FULL = 515
FSINFO_ATTR_MOUNT_TOPOLOGY = 516
FSINFO_ATTR_SOURCE = 9
FSINFO_ATTR_STATFS = 0
FSINFO_ATTR_SUPPORTS = 3
FSINFO_ATTR_TIMESTAMP_INFO = 4
FSINFO_ATTR_VOLUME_ID = 5
FSINFO_ATTR_VOLUME_NAME = 7
FSINFO_ATTR_VOLUME_UUID = 6
FSINFO_FLAGS_QUERY_FD = 1
FSINFO_FLAGS_QUERY_MASK = 7
FSINFO_FLAGS_QUERY_MOUNT = 2
FSINFO_FLAGS_QUERY_PATH = 0
F_ADD_SEALS = 1033
F_DUPFD = 0
F_DUPFD_CLOEXEC = 1030
@ -588,6 +616,7 @@ __NR_fcntl = 72
__NR_fdatasync = 75
__NR_finit_module = 313
__NR_flock = 73
__NR_fsinfo = 442
__NR_fstat = 5
# __NR_fstat64 is not set
# __NR_fstatat64 is not set

View File

@ -108,6 +108,34 @@ FIONBIO = 21537
FIONCLEX = 21584
FIOQSIZE = 21598
FITHAW = 3221510264
FSINFO_ATTR_AFS_CELL_NAME = 768
FSINFO_ATTR_AFS_SERVER_ADDRESSES = 770
FSINFO_ATTR_AFS_SERVER_NAME = 769
FSINFO_ATTR_CONFIGURATION = 10
FSINFO_ATTR_FEATURES = 8
FSINFO_ATTR_FSINFO_ATTRIBUTES = 257
FSINFO_ATTR_FSINFO_ATTRIBUTE_INFO = 256
FSINFO_ATTR_FS_STATISTICS = 11
FSINFO_ATTR_IDS = 1
FSINFO_ATTR_LIMITS = 2
FSINFO_ATTR_MOUNT_ALL = 518
FSINFO_ATTR_MOUNT_CHILDREN = 517
FSINFO_ATTR_MOUNT_INFO = 512
FSINFO_ATTR_MOUNT_PATH = 513
FSINFO_ATTR_MOUNT_POINT = 514
FSINFO_ATTR_MOUNT_POINT_FULL = 515
FSINFO_ATTR_MOUNT_TOPOLOGY = 516
FSINFO_ATTR_SOURCE = 9
FSINFO_ATTR_STATFS = 0
FSINFO_ATTR_SUPPORTS = 3
FSINFO_ATTR_TIMESTAMP_INFO = 4
FSINFO_ATTR_VOLUME_ID = 5
FSINFO_ATTR_VOLUME_NAME = 7
FSINFO_ATTR_VOLUME_UUID = 6
FSINFO_FLAGS_QUERY_FD = 1
FSINFO_FLAGS_QUERY_MASK = 7
FSINFO_FLAGS_QUERY_MOUNT = 2
FSINFO_FLAGS_QUERY_PATH = 0
F_ADD_SEALS = 1033
F_DUPFD = 0
F_DUPFD_CLOEXEC = 1030
@ -588,6 +616,7 @@ __NR_fcntl = 55
__NR_fdatasync = 148
__NR_finit_module = 379
__NR_flock = 143
__NR_fsinfo = 442
__NR_fstat = 108
__NR_fstat64 = 197
__NR_fstatat64 = 327

View File

@ -108,6 +108,34 @@ FIONBIO = 21537
FIONCLEX = 21584
FIOQSIZE = 21600
FITHAW = 3221510264
FSINFO_ATTR_AFS_CELL_NAME = 768
FSINFO_ATTR_AFS_SERVER_ADDRESSES = 770
FSINFO_ATTR_AFS_SERVER_NAME = 769
FSINFO_ATTR_CONFIGURATION = 10
FSINFO_ATTR_FEATURES = 8
FSINFO_ATTR_FSINFO_ATTRIBUTES = 257
FSINFO_ATTR_FSINFO_ATTRIBUTE_INFO = 256
FSINFO_ATTR_FS_STATISTICS = 11
FSINFO_ATTR_IDS = 1
FSINFO_ATTR_LIMITS = 2
FSINFO_ATTR_MOUNT_ALL = 518
FSINFO_ATTR_MOUNT_CHILDREN = 517
FSINFO_ATTR_MOUNT_INFO = 512
FSINFO_ATTR_MOUNT_PATH = 513
FSINFO_ATTR_MOUNT_POINT = 514
FSINFO_ATTR_MOUNT_POINT_FULL = 515
FSINFO_ATTR_MOUNT_TOPOLOGY = 516
FSINFO_ATTR_SOURCE = 9
FSINFO_ATTR_STATFS = 0
FSINFO_ATTR_SUPPORTS = 3
FSINFO_ATTR_TIMESTAMP_INFO = 4
FSINFO_ATTR_VOLUME_ID = 5
FSINFO_ATTR_VOLUME_NAME = 7
FSINFO_ATTR_VOLUME_UUID = 6
FSINFO_FLAGS_QUERY_FD = 1
FSINFO_FLAGS_QUERY_MASK = 7
FSINFO_FLAGS_QUERY_MOUNT = 2
FSINFO_FLAGS_QUERY_PATH = 0
F_ADD_SEALS = 1033
F_DUPFD = 0
F_DUPFD_CLOEXEC = 1030
@ -588,6 +616,7 @@ __NR_fcntl = 25
__NR_fdatasync = 83
__NR_finit_module = 273
__NR_flock = 32
__NR_fsinfo = 442
__NR_fstat = 80
# __NR_fstat64 is not set
# __NR_fstatat64 is not set

View File

@ -108,6 +108,34 @@ FIONBIO = 26238
FIONCLEX = 26114
FIOQSIZE = 26239
FITHAW = 3221510264
FSINFO_ATTR_AFS_CELL_NAME = 768
FSINFO_ATTR_AFS_SERVER_ADDRESSES = 770
FSINFO_ATTR_AFS_SERVER_NAME = 769
FSINFO_ATTR_CONFIGURATION = 10
FSINFO_ATTR_FEATURES = 8
FSINFO_ATTR_FSINFO_ATTRIBUTES = 257
FSINFO_ATTR_FSINFO_ATTRIBUTE_INFO = 256
FSINFO_ATTR_FS_STATISTICS = 11
FSINFO_ATTR_IDS = 1
FSINFO_ATTR_LIMITS = 2
FSINFO_ATTR_MOUNT_ALL = 518
FSINFO_ATTR_MOUNT_CHILDREN = 517
FSINFO_ATTR_MOUNT_INFO = 512
FSINFO_ATTR_MOUNT_PATH = 513
FSINFO_ATTR_MOUNT_POINT = 514
FSINFO_ATTR_MOUNT_POINT_FULL = 515
FSINFO_ATTR_MOUNT_TOPOLOGY = 516
FSINFO_ATTR_SOURCE = 9
FSINFO_ATTR_STATFS = 0
FSINFO_ATTR_SUPPORTS = 3
FSINFO_ATTR_TIMESTAMP_INFO = 4
FSINFO_ATTR_VOLUME_ID = 5
FSINFO_ATTR_VOLUME_NAME = 7
FSINFO_ATTR_VOLUME_UUID = 6
FSINFO_FLAGS_QUERY_FD = 1
FSINFO_FLAGS_QUERY_MASK = 7
FSINFO_FLAGS_QUERY_MOUNT = 2
FSINFO_FLAGS_QUERY_PATH = 0
F_ADD_SEALS = 1033
F_DUPFD = 0
F_DUPFD_CLOEXEC = 1030
@ -588,6 +616,7 @@ __NR_fcntl = 5070
__NR_fdatasync = 5073
__NR_finit_module = 5307
__NR_flock = 5071
__NR_fsinfo = 5442
__NR_fstat = 5005
# __NR_fstat64 is not set
# __NR_fstatat64 is not set

View File

@ -108,6 +108,34 @@ FIONBIO = 2147772030
FIONCLEX = 536897026
FIOQSIZE = 1074292352
FITHAW = 3221510264
FSINFO_ATTR_AFS_CELL_NAME = 768
FSINFO_ATTR_AFS_SERVER_ADDRESSES = 770
FSINFO_ATTR_AFS_SERVER_NAME = 769
FSINFO_ATTR_CONFIGURATION = 10
FSINFO_ATTR_FEATURES = 8
FSINFO_ATTR_FSINFO_ATTRIBUTES = 257
FSINFO_ATTR_FSINFO_ATTRIBUTE_INFO = 256
FSINFO_ATTR_FS_STATISTICS = 11
FSINFO_ATTR_IDS = 1
FSINFO_ATTR_LIMITS = 2
FSINFO_ATTR_MOUNT_ALL = 518
FSINFO_ATTR_MOUNT_CHILDREN = 517
FSINFO_ATTR_MOUNT_INFO = 512
FSINFO_ATTR_MOUNT_PATH = 513
FSINFO_ATTR_MOUNT_POINT = 514
FSINFO_ATTR_MOUNT_POINT_FULL = 515
FSINFO_ATTR_MOUNT_TOPOLOGY = 516
FSINFO_ATTR_SOURCE = 9
FSINFO_ATTR_STATFS = 0
FSINFO_ATTR_SUPPORTS = 3
FSINFO_ATTR_TIMESTAMP_INFO = 4
FSINFO_ATTR_VOLUME_ID = 5
FSINFO_ATTR_VOLUME_NAME = 7
FSINFO_ATTR_VOLUME_UUID = 6
FSINFO_FLAGS_QUERY_FD = 1
FSINFO_FLAGS_QUERY_MASK = 7
FSINFO_FLAGS_QUERY_MOUNT = 2
FSINFO_FLAGS_QUERY_PATH = 0
F_ADD_SEALS = 1033
F_DUPFD = 0
F_DUPFD_CLOEXEC = 1030
@ -588,6 +616,7 @@ __NR_fcntl = 55
__NR_fdatasync = 148
__NR_finit_module = 353
__NR_flock = 143
__NR_fsinfo = 442
__NR_fstat = 108
# __NR_fstat64 is not set
# __NR_fstatat64 is not set