Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

fs/namei.c handle_truncate() -> get_write_access()

Type Parameter Key Value

fs/overlayfs/inode.c ovl_setattr() -> get_write_access()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_lockref.lock

fs/nfsd/vfs.c nfsd_get_write_access() -> get_write_access()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
HALF_LOCKED2 &fhp->fh_dentry->d_lockref.lock

fs/gfs2/file.c gfs2_fallocate() -> get_write_access()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem

fs/open.c file_get_write_access() -> get_write_access()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_size

fs/open.c vfs_truncate() -> get_write_access()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BIT_INFO 0 inode->i_flags 0x0,0xfffffffb
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &key->sem
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &zone->lock