Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 13 files:
- fs/affs/dir.c, line 170
- fs/exfat/namei.c
- fs/ext2/dir.c, line 294
- fs/ext4/dir.c
- fs/ext4/inline.c, line 1484
- fs/fat/namei_vfat.c
- fs/fuse/readdir.c, line 532
- fs/libfs.c, line 2074
- fs/ocfs2/dir.c
- fs/stat.c, line 110
- fs/udf/dir.c, line 126
- fs/ufs/dir.c, line 447
- security/integrity/evm/evm_crypto.c, line 308
Smatch caller information:
fs/ufs/dir.c ufs_readdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
security/integrity/evm/evm_crypto.c evm_calc_hmac_or_hash() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| PARAM_VALUE | 0 | inode->i_opflags | 8-u16max |
| DATA_SOURCE | 0 | inode | r d_inode |
| BIT_INFO | 0 | inode->i_opflags | 0x8,0xffff |
| BIT_INFO | 0 | inode->i_sb->s_flags | 0x800000,0xffffffffffffffff |
| HALF_LOCKED2 | &iint->mutex | ||
| HALF_LOCKED2 | &inode->i_rwsem |
fs/ext2/dir.c ext2_readdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/fuse/readdir.c fuse_readdir_cached() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &fi->rdc.lock | ||
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct fuse_inode)->rdc.lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ocfs2/dir.c ocfs2_dir_foreach() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| BUF_SIZE | 0 | inode | (-1),1-s32max |
| BUF_SIZE | 0 | inode | (-1),1-s32max |
| DATA_SOURCE | 0 | inode | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | inode->i_mode | 0-u16max |
| USER_DATA | 0 | inode->i_size | (-9223372036854775807)-(-4),0-s64max |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_mapping->host->i_bytes | |
| HALF_LOCKED2 | 0 | &inode->i_rwsem | |
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ocfs2/dir.c ocfs2_dir_foreach_blk_el() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| BUF_SIZE | 0 | inode | (-1),1-s32max |
| BUF_SIZE | 0 | inode | (-1),1-s32max |
| DATA_SOURCE | 0 | inode | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | inode->i_mode | 0-u16max |
| USER_DATA | 0 | inode->i_size | (-9223372036854775807)-(-4),1-s64max |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_mapping->host->i_size | |
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | 0 | &inode->i_rwsem | |
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ocfs2/dir.c ocfs2_dir_foreach_blk_id() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| BUF_SIZE | 0 | inode | (-1),1-s32max |
| BUF_SIZE | 0 | inode | (-1),1-s32max |
| DATA_SOURCE | 0 | inode | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | inode->i_mode | 0-u16max |
| USER_DATA | 0 | inode->i_size | (-9223372036854775807)-(-4),0-s64max |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_bytes | |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_mapping->host->i_size | |
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | 0 | &inode->i_rwsem | |
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/stat.c generic_fillattr() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| DATA_SOURCE | 0 | inode | $2 |
| BIT_INFO | 0 | inode->i_sb->s_flags | 0x800000,0xffffffffffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &iint->mutex | ||
| HALF_LOCKED2 | &lo->lo_mutex | ||
| HALF_LOCKED2 | &root->kernfs_iattr_rwsem | ||
| HALF_LOCKED2 | &ui->ui_mutex |
fs/ext4/inline.c ext4_read_inline_dir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode->i_ino | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/exfat/namei.c exfat_lookup() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| DATA_SOURCE | 0 | inode | $0 |
| BIT_INFO | 0 | inode->i_flags | 0x0,0xffffffef |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | inode->i_mode | 0-u16max |
| USER_DATA | 0 | inode->i_size | (-9223372036854775807)-(-4),0-s64max |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_blkbits | |
| HALF_LOCKED2 | 0 | &inode->i_rwsem |
fs/exfat/namei.c exfat_rmdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode | 1 |
| CAPPED_DATA | 0 | inode->i_sb->s_time_max | 1 |
| DATA_SOURCE | 0 | inode | $0 |
| PARAM_COMPARE | 0 | inode->i_sb->s_time_max | >= $0->i_sb->s_time_min |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | &dentry->d_sb->s_vfs_rename_mutex | ||
| HALF_LOCKED2 | &dir->d_inode->i_rwsem | ||
| HALF_LOCKED2 | 0 | &inode->i_rwsem | |
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/exfat/namei.c exfat_unlink() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode | 1 |
| CAPPED_DATA | 0 | inode->i_sb->s_time_max | 1 |
| DATA_SOURCE | 0 | inode | $0 |
| PARAM_COMPARE | 0 | inode->i_sb->s_time_max | >= $0->i_sb->s_time_min |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &target->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | &dentry->d_sb->s_vfs_rename_mutex | ||
| HALF_LOCKED2 | &dir->d_inode->i_rwsem | ||
| HALF_LOCKED2 | 0 | &inode->i_rwsem | |
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/fat/namei_vfat.c vfat_lookup() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| DATA_SOURCE | 0 | inode | $0 |
| BIT_INFO | 0 | inode->i_flags | 0x0,0xffffffef |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | inode->i_mode | 0-u16max |
| USER_DATA | 0 | inode->i_size | (-9223372036854775807)-(-4),0-s64max |
| NO_OVERFLOW_SIMPLE | 0 | inode->i_blkbits | |
| HALF_LOCKED2 | 0 | &inode->i_rwsem |
fs/fat/namei_vfat.c vfat_rmdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode | 1 |
| DATA_SOURCE | 0 | inode | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &dentry->d_inode->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | &dentry->d_sb->s_vfs_rename_mutex | ||
| HALF_LOCKED2 | &dir->d_inode->i_rwsem | ||
| HALF_LOCKED2 | 0 | &inode->i_rwsem | |
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/fat/namei_vfat.c vfat_unlink() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode | 1 |
| DATA_SOURCE | 0 | inode | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &target->i_rwsem | ||
| HALF_LOCKED2 | &dentry->d_lockref.lock | ||
| HALF_LOCKED2 | &dentry->d_sb->s_vfs_rename_mutex | ||
| HALF_LOCKED2 | &dir->d_inode->i_rwsem | ||
| HALF_LOCKED2 | 0 | &inode->i_rwsem | |
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/udf/dir.c udf_readdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode->i_size | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/affs/dir.c affs_readdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode->i_ino | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ext4/dir.c ext4_dx_readdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |
fs/ext4/dir.c ext4_readdir() -> inode_query_iversion()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | inode | 4096-ptr_max |
| CAPPED_DATA | 0 | inode | 1 |
| BIT_INFO | 0 | inode->i_flags | 0x0,0xffffffff |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 0 | inode->i_blocks | 0-18014398515341359,18428729675200069633-u64max |
| USER_DATA | 0 | inode->i_sb->s_fs_info->s_first_error_block | s64min-s64max[c] |
| USER_DATA | 0 | inode->i_sb->s_fs_info->s_first_error_ino | 0-4294967295 |
| HALF_LOCKED2 | &dir_fp->readdir_lock | ||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem |