Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

fs/afs/security.c afs_permission() -> afs_check_validity()

Type Parameter Key Value
PARAM_VALUE 0 vnode 4096-ptr_max
PARAM_VALUE 0 vnode->volume 4096-ptr_max
PARAM_VALUE 0 vnode->volume->cell 4096-ptr_max
PARAM_VALUE 0 vnode->volume->cell->key_desc 4096-ptr_max
PARAM_VALUE 0 vnode->volume->cell->net 4096-ptr_max
PARAM_VALUE 0 vnode->volume->cell->net->net 4096-ptr_max
DATA_SOURCE 0 vnode r AFS_FS_I
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &cgroup_mutex

fs/afs/file.c afs_vm_map_pages() -> afs_check_validity()

Type Parameter Key Value
PARAM_VALUE 0 vnode 4096-ptr_max
DATA_SOURCE 0 vnode r AFS_FS_I
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &mm->mmap_lock

fs/afs/validation.c afs_validate() -> afs_check_validity()

Type Parameter Key Value
PARAM_VALUE 0 vnode 4096-ptr_max
PARAM_VALUE 0 vnode->netfs.inode.i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vnode->netfs.inode.i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 vnode->netfs.inode.i_mapping->invalidate_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vnode->netfs.inode.i_mapping->invalidate_lock.first_waiter->type 0-1
PARAM_VALUE 0 vnode->validate_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 vnode->validate_lock.first_waiter->type 0-1
DATA_SOURCE 0 vnode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/afs/symlink.c afs_get_link() -> afs_check_validity()

Type Parameter Key Value
PARAM_VALUE 0 vnode 4096-ptr_max
PARAM_VALUE 0 vnode->symlink 1-u64max
DATA_SOURCE 0 vnode r AFS_FS_I
RX_PATH
TASK_NOT_RUNNING

fs/afs/dir.c afs_d_revalidate_rcu() -> afs_check_validity()

Type Parameter Key Value
PARAM_VALUE 0 vnode 4096-ptr_max
DATA_SOURCE 0 vnode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dentry->d_lockref.lock