Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

drivers/block/drbd/drbd_debugfs.c drbd_single_open() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dentry->d_inode->i_blkbits

fs/configfs/dir.c detach_attrs() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &configfs_dirent_lock
LOCK2 0 &dentry->d_lockref.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &dentry->d_sb->s_vfs_rename_mutex
TYPE_LOCK (struct lockref)->lock

fs/autofs/expire.c autofs_tree_busy() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry $1
UNITS 0 dentry unit_jiffy
HALF_LOCKED2 &found->d_lockref.lock
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/autofs/expire.c positive_after() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
DATA_SOURCE 0 dentry $1 [m]
PREEMPT_ADD <- disables preempt
UNITS 0 dentry unit_jiffy
LOCK2 &sbi->lookup_lock
LOCK2 0 &dentry->d_lockref.lock
HALF_LOCKED2 &found->d_lockref.lock
HALF_LOCKED2 &p->d_lockref.lock
TYPE_LOCK (struct autofs_sb_info)->lookup_lock
TYPE_LOCK (struct lockref)->lock

security/apparmor/apparmorfs.c aafs_remove() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_hash.pprev 1-u64max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
CAPPED_DATA 0 dentry->d_parent 1
DATA_SOURCE 0 dentry r start_removing_dentry
LOCK2 0 &dentry->d_parent->d_inode->i_rwsem
HALF_LOCKED2 &ns->lock
TYPE_LOCK (struct inode)->i_rwsem

fs/nfs/dir.c nfs_dentry_handle_enoent() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_inode 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
CAPPED_DATA 0 dentry 1
CAPPED_DATA 0 dentry->d_parent->d_inode 1
DATA_SOURCE 0 dentry $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
HALF_LOCKED2 &target->i_rwsem
HALF_LOCKED2 0 &dentry->d_inode->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock
HALF_LOCKED2 0 &dentry->d_sb->s_vfs_rename_mutex

fs/smb/client/inode.c __cifs_unlink() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
CAPPED_DATA 0 dentry 1
DATA_SOURCE 0 dentry $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dentry->d_inode->i_mode 0-u16max
USER_DATA 0 dentry->d_inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 dentry->moved->d_inode->i_size
HALF_LOCKED2 &target->i_rwsem
HALF_LOCKED2 0 &dentry->d_sb->s_vfs_rename_mutex

fs/libfs.c __simple_recursive_removal() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BUF_SIZE 0 dentry (-1),1-s32max
BUF_SIZE 0 dentry (-1),1-s32max
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 dentry->dev.driver_data->pdev->sriov->offset 0
HOST_DATA 0 dentry->dev.driver_data->pdev->sriov->stride 0
HOST_DATA 0 dentry->sriov->offset 0
HOST_DATA 0 dentry->sriov->stride 0
NO_OVERFLOW_SIMPLE 0 dentry->tm->bm->bufio->block_size
UNITS 0 dentry unit_jiffy
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 0 &dentry->d_lockref.lock

fs/libfs.c find_next_child() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &parent->d_lockref.lock
HALF_LOCKED2 &root->i_rwsem

fs/libfs.c find_next_child() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_hash.pprev 1-u64max
PARAM_VALUE 0 dentry->d_inode 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &parent->d_lockref.lock
LOCK2 0 &dentry->d_lockref.lock
HALF_LOCKED2 &root->i_rwsem
TYPE_LOCK (struct lockref)->lock

fs/libfs.c find_positive_dentry() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 1-u64max
DATA_SOURCE 0 dentry $1 [m]
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dentry->d_name.name
LOCK2 &parent->d_lockref.lock
HALF_LOCKED2 &dir_fp->readdir_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 rcu_read
HALF_LOCKED2 0 &dentry->d_lockref.lock
TYPE_LOCK (struct inode)->i_rwsem

fs/libfs.c find_positive_dentry() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_hash.pprev 1-u64max
PARAM_VALUE 0 dentry->d_inode 1-u64max
DATA_SOURCE 0 dentry $1 [m]
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dentry->d_name.name
LOCK2 &parent->d_lockref.lock
LOCK2 0 &dentry->d_lockref.lock
HALF_LOCKED2 &dir_fp->readdir_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct inode)->i_rwsem
TYPE_LOCK (struct lockref)->lock

fs/libfs.c scan_positives() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
BIT_INFO 0 dentry->d_flags 0x0,0xfdffffff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dentry->d_lockref.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/libfs.c scan_positives() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PARAM_VALUE 0 dentry->d_hash.pprev 1-u64max
PARAM_VALUE 0 dentry->d_inode 1-u64max
BIT_INFO 0 dentry->d_flags 0x0,0xfdffffff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dentry->d_lockref.lock
LOCK2 0 &dentry->d_lockref.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem
TYPE_LOCK (struct lockref)->lock

fs/libfs.c simple_empty() -> simple_positive()

Type Parameter Key Value
PARAM_VALUE 0 dentry 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dentry->d_lockref.lock
LOCK2 0 &dentry->d_lockref.lock
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_parent->d_inode->i_rwsem
HALF_LOCKED2 &fc->killsb
HALF_LOCKED2 &parent->i_rwsem
TYPE_LOCK (struct lockref)->lock