Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 11 files:

Smatch caller information:

fs/nfs/inode.c nfs_file_set_open_context() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->dentry 4096-ptr_max
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_umount.first_waiter->type 0-1
PARAM_VALUE 0 ctx->state->inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->state->inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ctx->state->inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->state->inode->i_sb->s_umount.first_waiter->type 0-1
BUF_SIZE 0 ctx 200
BUF_SIZE 0 ctx->flock_owner (-1)-s32max
BUF_SIZE 0 ctx->state (-1),448
DATA_SOURCE 0 ctx $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 ctx->dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 ctx->dentry->d_name->name 0-255
USER_DATA 0 ctx->dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 ctx->dentry->d_sb->s_flags 0-u64max[c]
USER_DATA 0 ctx->lock_context.open_context->mode 0-3,32-35[c]
USER_DATA 0 ctx->mode 0-3,32-35[c]
USER_DATA 0 *ctx->dentry->__d_name.name 0-255
USER_DATA 0 *ctx->dentry->d_parent->__d_name.name 0-255
NO_OVERFLOW_SIMPLE 0 ctx->state->inode->i_bytes
NO_OVERFLOW_SIMPLE 0 ctx->state->inode->i_size
USER_PTR 0 ctx->dentry->__d_name.name

fs/nfs/inode.c nfs_find_open_context() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &mapping->invalidate_lock

fs/nfs/inode.c nfs_get_lock_context() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->dentry 4096-ptr_max
PARAM_VALUE 0 ctx->dentry->d_inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_export_op->fh_to_parent 0,5297,148606482432692224,436469935444291584,467281172929331200,529780027764285440,1092893949038768128,1556959531105513472,1608953577475584000,1649536479961075712,2404761408063094784,2970908329832960000,3511613614414655488-s64max
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_export_op->get_parent 0,8931,264940071972966400,291591359766798336,565128213429456896,893189740598853632,1241177127089143808,1474696885321834496,1812477326828269568,1893665921928286208,2210088671756947456,2437012291923775488,2483979068402987008-s64max
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_umount.first_waiter->type 0-1
PARAM_VALUE 0 ctx->state->inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->state->inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ctx->state->inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->state->inode->i_sb->s_umount.first_waiter->type 0-1
BUF_SIZE 0 ctx s32min-(-1),1-s32max
BUF_SIZE 0 ctx s32min-(-1),1-s32max
BUF_SIZE 0 ctx->flock_owner (-1),1-s32max
DATA_SOURCE 0 ctx $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 ctx->dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 ctx->dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 ctx->lock_context.open_context->mode 0-3,32-35[c]
USER_DATA 0 ctx->mode 0-3,32-35[c]
USER_DATA 0 ctx->state->state 0-u32max[c]
USER_DATA 0 *ctx->dentry->__d_name.name 0-255
USER_DATA 0 *ctx->dentry->d_parent->__d_name.name 0-255
USER_PTR 0 ctx->dentry->__d_name.name
LOCK2 &inode->i_lock
HALF_LOCKED2 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_lock

fs/nfs/delegation.c nfs_delegation_claim_opens() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->dentry->d_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->dentry->d_sb->s_umount.first_waiter->type 0-1
PARAM_VALUE 0 ctx->state 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &inode->i_lock
HALF_LOCKED2 &inode->i_rwsem

fs/nfs/nfs3proc.c nfs3_nlm_alloc_call() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/nfs/fscache.c nfs_netfs_init_request() -> get_nfs_open_context()

Type Parameter Key Value
BUF_SIZE 0 ctx s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem

fs/nfs/direct.c nfs_file_direct_read() -> get_nfs_open_context()

Type Parameter Key Value
BUF_SIZE 0 ctx s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING

fs/nfs/direct.c nfs_file_direct_write() -> get_nfs_open_context()

Type Parameter Key Value
BUF_SIZE 0 ctx s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING

fs/nfs/nfs42proc.c _nfs42_proc_copy_notify() -> get_nfs_open_context()

Type Parameter Key Value
BUF_SIZE 0 ctx s32min-(-2),1-s32max
RX_PATH

fs/nfs/pagelist.c nfs_pgio_rpcsetup() -> get_nfs_open_context()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

fs/nfs/read.c nfs_do_read_folio() -> get_nfs_open_context()

Type Parameter Key Value
BUF_SIZE 0 ctx s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING

fs/nfs/read.c nfs_readahead() -> get_nfs_open_context()

Type Parameter Key Value
BUF_SIZE 0 ctx s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mapping->invalidate_lock

fs/nfs/nfs4proc.c nfs4_alloc_lockdata() -> get_nfs_open_context()

Type Parameter Key Value
BUF_SIZE 0 ctx s32min-(-2),1-s32max
BUF_SIZE 0 ctx s32min-(-2),1-s32max
DATA_SOURCE 0 ctx $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &nfsi->rwsem
HALF_LOCKED2 &sp->so_delegreturn_mutex

fs/nfs/nfs4proc.c nfs4_alloc_unlockdata() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->dentry 4096-ptr_max
PARAM_VALUE 0 ctx->dentry->d_inode->i_lock.rlock.dep_map->name 0-255
BUF_SIZE 0 ctx s32min-(-1),1-s32max
BUF_SIZE 0 ctx s32min-(-1),1-s32max
DATA_SOURCE 0 ctx $1
RX_PATH
TASK_NOT_RUNNING

fs/nfs/nfs4proc.c nfs4_state_find_open_context_mode() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->state 4096-ptr_max
CAPPED_DATA 0 ctx->state 1
LOCK2 rcu_read

fs/nfs/write.c nfs_init_commit() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->dentry 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock

fs/nfs/pnfs.c pnfs_alloc_init_layoutget_args() -> get_nfs_open_context()

Type Parameter Key Value
PARAM_VALUE 0 ctx 4096-ptr_max
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->dentry->d_inode->i_sb->s_umount.first_waiter->type 0-1
PARAM_VALUE 0 ctx->dentry->d_parent->d_alias->next->pprev 1-u64max
PARAM_VALUE 0 ctx->dentry->d_parent->d_inode->i_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->dentry->d_parent->d_sb->s_fs_info->lookup_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->dentry->d_parent->d_sb->s_roots_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctx->dentry->d_parent->d_sib->next->pprev 1-u64max
PARAM_VALUE 0 ctx->state->inode->i_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->state->inode->i_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 ctx->state->inode->i_sb->s_umount.first_waiter->handoff_set 0-1
PARAM_VALUE 0 ctx->state->inode->i_sb->s_umount.first_waiter->type 0-1
PARAM_VALUE 0 *ctx->dentry->d_parent->d_fsdata->d_inode->i_sb->s_fs_info->s_first_error_func 0-255
PARAM_VALUE 0 *ctx->dentry->d_parent->d_fsdata->d_inode->i_sb->s_fs_info->s_last_error_func 0-255
PARAM_VALUE 0 *ctx->dentry->d_parent->d_inode->i_sb->s_fs_info->page_eio_cnt s32min-s32max
BUF_SIZE 0 ctx->flock_owner (-1),1-s32max
CAPPED_DATA 0 ctx->dentry->d_parent 1
DATA_SOURCE 0 ctx $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 ctx->dentry->__d_name.hash 0-u32max[c]
USER_DATA 0 ctx->dentry->d_parent->__d_name.hash 0-u32max[c]
USER_DATA 0 ctx->lock_context.open_context->mode 0-3,32-35[c]
USER_DATA 0 ctx->mode 0-3,32-35[c]
USER_DATA 0 ctx->state->state 0-u32max[c]
USER_DATA 0 *ctx->dentry->__d_name.name 0-255
USER_DATA 0 *ctx->dentry->d_parent->__d_name.name 0-255
USER_PTR 0 ctx->dentry->__d_name.name