Defined in 1 files as a function:

Referenced in 11 files:

Smatch caller information:

fs/ceph/mds_client.c __choose_mds() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
BUF_SIZE 0 inode (-1),400,1160,1168
BUF_SIZE 0 inode (-1),400,1160,1168
STR_LEN 0 inode (-1),23-24
STR_LEN 0 inode (-1),23-24
NOSPEC 0 inode->i_mode
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
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
NO_OVERFLOW_SIMPLE 0 inode->i_ino
NO_OVERFLOW_SIMPLE 0 inode->i_linklen
LOCK2 &mdsc->mutex
HALF_LOCKED2 &mdsc->snap_rwsem
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c __choose_mds() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode->i_sb 1
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
LOCK2 &mdsc->mutex
LOCK2 rcu_read
HALF_LOCKED2 &mdsc->snap_rwsem
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c build_dentry_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
DATA_SOURCE 0 inode $2 [m]
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_size
LOCK2 &mdsc->mutex
LOCK2 rcu_read
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c build_dentry_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $2 [m]
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
BIT_INFO 0 inode->i_flags 0x0,0xffffbfff
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_size
LOCK2 &mdsc->mutex
LOCK2 rcu_read
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c build_inode_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1),4,24,64,168-s32max
BUF_SIZE 0 inode (-1),4,24,64,168-s32max
DATA_SOURCE 0 inode $0
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
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
NO_OVERFLOW_SIMPLE 0 inode->i_ino
NO_OVERFLOW_SIMPLE 0 inode->i_linklen
LOCK2 &mdsc->mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c build_inode_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1),4,24,64,168-s32max
BUF_SIZE 0 inode (-1),4,24,64,168-s32max
DATA_SOURCE 0 inode $0
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
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
NO_OVERFLOW_SIMPLE 0 inode->i_ino
NO_OVERFLOW_SIMPLE 0 inode->i_linklen
LOCK2 &mdsc->mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c build_inode_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1),4,24,64,168-s32max
BUF_SIZE 0 inode (-1),4,24,64,168-s32max
DATA_SOURCE 0 inode $0
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
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
NO_OVERFLOW_SIMPLE 0 inode->i_ino
NO_OVERFLOW_SIMPLE 0 inode->i_linklen
LOCK2 &mdsc->mutex
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c ceph_mdsc_build_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cur->d_lockref.lock
HALF_LOCKED2 &mdsc->mutex
HALF_LOCKED2 &mdsc->mutex
HALF_LOCKED2 &s->lock
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct lockref)->lock

fs/ceph/mds_client.c ceph_mdsc_build_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &cur->d_lockref.lock
HALF_LOCKED2 &mdsc->mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct lockref)->lock

fs/ceph/mds_client.c ceph_mdsc_build_path() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cur->d_lockref.lock
HALF_LOCKED2 &mdsc->mutex
HALF_LOCKED2 &mdsc->mutex
HALF_LOCKED2 &s->lock
HALF_LOCKED2 &session->s_mutex

fs/ceph/mds_client.c ceph_mdsc_lease_send_msg() -> ceph_snap()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dentry->d_lockref.lock
TYPE_LOCK (struct lockref)->lock

fs/ceph/mds_client.c dump_cap_flushes() -> ceph_snap()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
LOCK2 &mdsc->cap_dirty_lock
HALF_LOCKED2 &sb->s_umount
TYPE_LOCK (struct ceph_mds_client)->cap_dirty_lock

fs/ceph/mds_client.c get_nonsnap_parent() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
LOCK2 &mdsc->mutex
LOCK2 rcu_read
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/mds_client.c set_request_path_attr() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1),400,1160
BUF_SIZE 0 inode (-1),400,1160
DATA_SOURCE 0 inode $1
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
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
NO_OVERFLOW_SIMPLE 0 inode->i_ino
NO_OVERFLOW_SIMPLE 0 inode->i_linklen
LOCK2 &mdsc->mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/crypto.c ceph_encode_encrypted_dname() -> ceph_snap()

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
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_size
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &mdsc->mutex

fs/ceph/crypto.c ceph_fname_to_usr() -> ceph_snap()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mdsc->mutex
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &session->s_mutex

fs/ceph/export.c __get_snap_name() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &child->d_lockref.lock

fs/ceph/export.c __get_snap_name() -> ceph_snap()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &child->d_lockref.lock

fs/ceph/export.c __get_snap_name() -> ceph_snap()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &child->d_lockref.lock

fs/ceph/export.c __get_snap_name() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &child->d_lockref.lock

fs/ceph/export.c __snapfh_to_dentry() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
RX_PATH
TASK_NOT_RUNNING

fs/ceph/export.c ceph_encode_fh() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1)-s32max
BUF_SIZE 0 inode (-1)-s32max
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &group->mark_mutex
HALF_LOCKED2 &m->lock
HALF_LOCKED2 0 &inode->i_sb->s_umount

fs/ceph/export.c ceph_encode_snapfh() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1)-s32max
BUF_SIZE 0 inode (-1)-s32max
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &group->mark_mutex
HALF_LOCKED2 &m->lock
HALF_LOCKED2 0 &inode->i_sb->s_umount

fs/ceph/export.c ceph_encode_snapfh() -> ceph_snap()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &group->mark_mutex
HALF_LOCKED2 &inode->i_sb->s_umount
HALF_LOCKED2 &m->lock

fs/ceph/export.c ceph_get_name() -> ceph_snap()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &child->d_lockref.lock

fs/ceph/export.c ceph_get_parent() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &child->d_lockref.lock

fs/ceph/export.c ceph_get_parent() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &child->d_lockref.lock

fs/ceph/inode.c __ceph_do_getattr() -> ceph_snap()

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
STR_LEN 0 inode (-1),23-24
STR_LEN 0 inode (-1),23-24
NOSPEC 0 inode->i_bytes
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_sb->s_flags 0-u64max[c]
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_data.host->i_size
NO_OVERFLOW_SIMPLE 0 inode->i_ino
NO_OVERFLOW_SIMPLE 0 inode->i_linklen
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize_bits
HALF_LOCKED2 &mapping->invalidate_lock
HALF_LOCKED2 &qri->mutex
HALF_LOCKED2 0 &inode->i_rwsem

fs/ceph/inode.c __update_dentry_lease() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $0
PREEMPT_ADD
LOCK2 &dentry->d_lockref.lock
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct lockref)->lock

fs/ceph/inode.c ceph_evict_inode() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode 1
CAPPED_DATA 0 inode->i_io_list.next 1
CAPPED_DATA 0 &inode->i_data 1
DATA_SOURCE 0 inode $0
PARAM_COMPARE 0 &inode->i_wb_list == $0->i_wb_list.next
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_bytes

fs/ceph/inode.c ceph_fill_inode() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1)-s32max
BUF_SIZE 0 inode (-1)-s32max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
USER_DATA 0 inode->i_ino 0-u64max
USER_DATA 0 inode->i_mode 0-u16max[c]
USER_DATA 0 inode->i_rdev 0-u32max[c]
USER_DATA 0 inode->i_sb->s_flags 0-u64max[c]
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 inode->i_size
LOCK2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem

fs/ceph/inode.c ceph_fill_inode() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1)-s32max
BUF_SIZE 0 inode (-1)-s32max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
USER_DATA 0 inode->i_ino 0-u64max
USER_DATA 0 inode->i_mode 0-u16max[c]
USER_DATA 0 inode->i_rdev 0-u32max[c]
USER_DATA 0 inode->i_sb->s_flags 0-u64max[c]
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 inode->i_size
LOCK2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem

fs/ceph/inode.c ceph_fill_inode() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1)-s32max
BUF_SIZE 0 inode (-1)-s32max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
USER_DATA 0 inode->i_ino 0-u64max
USER_DATA 0 inode->i_mode 0-u16max[c]
USER_DATA 0 inode->i_rdev 0-u32max[c]
USER_DATA 0 inode->i_sb->s_flags 0-u64max[c]
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 inode->i_size
LOCK2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem

fs/ceph/inode.c ceph_fill_inode() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1)-s32max
BUF_SIZE 0 inode (-1)-s32max
BUF_SIZE 0 inode->i_fop (-1),272
BUF_SIZE 0 inode->i_mapping->a_ops 144
BUF_SIZE 0 inode->i_op (-1),256
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $0
BIT_INFO 0 inode->i_flags 0x0,0xffffffff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->__i_nlink 1-u32max
USER_DATA 0 inode->i_blocks 0-18014398509481983,18428729675200069632-u64max
USER_DATA 0 inode->i_bytes 0-511[c]
USER_DATA 0 inode->i_ino 0-u64max
USER_DATA 0 inode->i_mode 0-u16max[c]
USER_DATA 0 inode->i_rdev 0-u32max[c]
USER_DATA 0 inode->i_sb->s_flags 0-u64max[c]
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_bytes
NO_OVERFLOW_SIMPLE 0 inode->i_mapping->host->i_size
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize
NO_OVERFLOW_SIMPLE 0 inode->i_sb->s_blocksize_bits
NO_OVERFLOW_SIMPLE 0 inode->i_size
LOCK2 &ci->i_ceph_lock
LOCK2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem

fs/ceph/inode.c ceph_get_reply_dir() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
DATA_SOURCE 0 inode $1
LOCK2 &mdsc->snap_rwsem
LOCK2 &req->r_fill_mutex
LOCK2 &session->s_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem
TYPE_LOCK (struct ceph_mds_request)->r_fill_mutex
TYPE_LOCK (struct ceph_mds_session)->s_mutex

fs/ceph/inode.c ceph_get_reply_dir() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
DATA_SOURCE 0 inode $1
LOCK2 &mdsc->snap_rwsem
LOCK2 &req->r_fill_mutex
LOCK2 &session->s_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem
TYPE_LOCK (struct ceph_mds_request)->r_fill_mutex
TYPE_LOCK (struct ceph_mds_session)->s_mutex

fs/ceph/inode.c ceph_getattr() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &iint->mutex
HALF_LOCKED2 &lo->lo_mutex

fs/ceph/inode.c ceph_getattr() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &iint->mutex
HALF_LOCKED2 &lo->lo_mutex

fs/ceph/inode.c ceph_new_inode() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $0
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max

fs/ceph/inode.c ceph_readdir_prepopulate() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
LOCK2 &mdsc->snap_rwsem
LOCK2 &req->r_fill_mutex
LOCK2 &session->s_mutex
HALF_LOCKED2 &dn->d_lockref.lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem
TYPE_LOCK (struct ceph_mds_request)->r_fill_mutex
TYPE_LOCK (struct ceph_mds_session)->s_mutex

fs/ceph/inode.c ceph_setattr() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 &dentry->d_inode->i_rwsem
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock

fs/ceph/inode.c ceph_vino_matches_parent() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
DATA_SOURCE 0 inode $0
LOCK2 &mdsc->snap_rwsem
LOCK2 &req->r_fill_mutex
LOCK2 &session->s_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem
TYPE_LOCK (struct ceph_mds_request)->r_fill_mutex
TYPE_LOCK (struct ceph_mds_session)->s_mutex

fs/ceph/quota.c check_quota_exceeded() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode->i_sb 1
DATA_SOURCE 0 inode $0
NOSPEC 0 inode->i_size
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_blocks 0-18014398509481984[c]
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-s64max
HALF_LOCKED2 0 &inode->i_rwsem

fs/ceph/quota.c get_quota_realm() -> ceph_snap()

Type Parameter Key Value
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mdsc->snap_rwsem
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem

fs/ceph/acl.c ceph_set_acl() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 &dentry->d_lockref.lock

fs/ceph/dir.c ceph_d_delete() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dentry->d_lockref.lock
HALF_LOCKED2 global &mount_lock.lock
TYPE_LOCK (struct lockref)->lock

fs/ceph/dir.c ceph_d_revalidate() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $0
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 0 &inode->i_rwsem

fs/ceph/dir.c ceph_d_revalidate() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 1-u64max
RX_PATH
TASK_NOT_RUNNING

fs/ceph/dir.c ceph_d_revalidate() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $0
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
STR_LEN 0 inode (-1),1-24,26-27,29,31-34,63,99,115,254-255
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 0 &inode->i_rwsem

fs/ceph/dir.c ceph_handle_snapdir() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

fs/ceph/dir.c ceph_link() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode->i_sb 1
CAPPED_DATA 0 inode->i_sb->s_user_ns->gid_map.nr_extents 1
CAPPED_DATA 0 inode->i_sb->s_user_ns->uid_map.nr_extents 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
LOCK2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem

fs/ceph/dir.c ceph_lookup() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
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_blkbits
HALF_LOCKED2 0 &inode->i_rwsem

fs/ceph/dir.c ceph_mkdir() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1),1160
BUF_SIZE 0 inode (-1),1160
CAPPED_DATA 0 inode->i_sb->s_user_ns->gid_map.nr_extents 1
CAPPED_DATA 0 inode->i_sb->s_user_ns->uid_map.nr_extents 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 &dentry->d_lockref.lock

fs/ceph/dir.c ceph_mkdir() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BUF_SIZE 0 inode (-1),1160
BUF_SIZE 0 inode (-1),1160
CAPPED_DATA 0 inode->i_sb->s_user_ns->gid_map.nr_extents 1
CAPPED_DATA 0 inode->i_sb->s_user_ns->uid_map.nr_extents 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 &dentry->d_lockref.lock

fs/ceph/dir.c ceph_mknod() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 0 &inode->i_rwsem

fs/ceph/dir.c ceph_readdir() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &ci->i_ceph_lock
HALF_LOCKED2 &dir_fp->readdir_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock
TYPE_LOCK (struct inode)->i_rwsem

fs/ceph/dir.c ceph_readdir() -> ceph_snap()

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/ceph/dir.c ceph_rename() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/ceph/dir.c ceph_rename() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $3
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/ceph/dir.c ceph_rename() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/ceph/dir.c ceph_rename() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &source->i_rwsem
HALF_LOCKED2 &target->i_rwsem

fs/ceph/dir.c ceph_symlink() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode->i_sb->s_user_ns->gid_map.nr_extents 1
CAPPED_DATA 0 inode->i_sb->s_user_ns->uid_map.nr_extents 1
DATA_SOURCE 0 inode $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max

fs/ceph/dir.c ceph_unlink() -> ceph_snap()

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
HALF_LOCKED2 &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 &target->i_rwsem
HALF_LOCKED2 0 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/ceph/dir.c ceph_unlink() -> ceph_snap()

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
HALF_LOCKED2 &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 &target->i_rwsem
HALF_LOCKED2 0 &inode->i_rwsem
TYPE_LOCK (struct inode)->i_rwsem

fs/ceph/xattr.c __ceph_setxattr() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $0
STR_LEN 0 inode (-1)-0,23-24
STR_LEN 0 inode (-1)-0,23-24
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 inode->i_mode 0-u16max
USER_DATA 0 inode->i_size (-9223372036854775807)-(-4),0-s64max
HALF_LOCKED2 0 &inode->i_rwsem

fs/ceph/file.c __ceph_copy_file_range() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
CAPPED_DATA 0 inode->i_sb 1
RX_PATH
HALF_LOCKED2 &pool->lock

fs/ceph/file.c ceph_direct_read_write() -> ceph_snap()

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

fs/ceph/file.c ceph_fallocate() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
BIT_INFO 0 inode->i_flags 0x0,0xffffbfff
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem

fs/ceph/file.c ceph_open() -> ceph_snap()

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

fs/ceph/file.c ceph_open() -> ceph_snap()

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

fs/ceph/file.c ceph_open() -> ceph_snap()

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

fs/ceph/file.c ceph_open() -> ceph_snap()

Type Parameter Key Value
PARAM_VALUE 0 inode 4096-ptr_max
DATA_SOURCE 0 inode $0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 inode->i_blkbits
NO_OVERFLOW_SIMPLE 0 inode->i_size
LOCK2 &ci->i_ceph_lock
HALF_LOCKED2 &dentry->d_lockref.lock
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock

fs/ceph/file.c ceph_sync_write() -> ceph_snap()

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

fs/ceph/file.c ceph_write_iter() -> ceph_snap()

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