Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\inode.c Create Date:2022-07-28 20:08:00
Last Modify:2020-03-18 19:19:59 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Generic function to check FS_IOC_FSSETXATTR values and reject any invalid* configurations.* Note: the caller should be holding i_mutex, or else be sure that they have* exclusive access to the inode structure.

Proto:int vfs_ioc_fssetxattr_check(struct inode *inode, const struct fsxattr *old_fa, struct fsxattr *fa)

Type:int

Parameter:

TypeParameterName
struct inode *inode
const struct fsxattr *old_fa
struct fsxattr *fa
2273  If (xflags field value (get/set) ^ xflags field value (get/set) ) & (le cannot be modified | all writes append ) && Not Check operation authority Then Return -EPERM
2283  If current_user_ns() != userns count is 1 for root user, 1 for init_uts_ns,* and 1 for... ? Then
2284  If project identifier (get/set) != project identifier (get/set) Then Return -EINVAL
2286  If (xflags field value (get/set) ^ xflags field value (get/set) ) & create with parents projid Then Return -EINVAL
2292  If xflags field value (get/set) & xtent size allocator hint && Not S_ISREG(i_mode) Then Return -EINVAL
2295  If xflags field value (get/set) & herit inode extent size && Not S_ISDIR(i_mode) Then Return -EINVAL
2299  If xflags field value (get/set) & CoW extent size allocator hint && Not S_ISREG(i_mode) && Not S_ISDIR(i_mode) Then Return -EINVAL
2307  If xflags field value (get/set) & use DAX for IO && Not (S_ISREG(i_mode) || S_ISDIR(i_mode)) Then Return -EINVAL
2312  If xtsize field value (get/set) == 0 Then xflags field value (get/set) &= ~(xtent size allocator hint | herit inode extent size )
2314  If CoW extsize field value (get/set) == 0 Then xflags field value (get/set) &= ~CoW extent size allocator hint
2317  Return 0