Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/ceph/snap.c ceph_queue_cap_snap() -> __ceph_caps_dirty()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci $0
PREEMPT_ADD <- disables preempt
LOCK2 &mdsc->snap_rwsem
LOCK2 0 &ci->i_ceph_lock
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock
TYPE_LOCK (struct ceph_mds_client)->snap_rwsem

fs/ceph/caps.c ceph_drop_caps_for_unlink() -> __ceph_caps_dirty()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci r ceph_inode
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &ci->i_ceph_lock
HALF_LOCKED2 &target->i_rwsem
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock

fs/ceph/caps.c ceph_encode_inode_release() -> __ceph_caps_dirty()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci r ceph_inode
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mdsc->mutex
LOCK2 0 &ci->i_ceph_lock
HALF_LOCKED2 &session->s_mutex
TYPE_LOCK (struct ceph_inode_info)->i_ceph_lock
TYPE_LOCK (struct ceph_mds_client)->mutex

fs/ceph/caps.c ceph_write_inode() -> __ceph_caps_dirty()

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

fs/ceph/caps.c handle_cap_grant() -> __ceph_caps_dirty()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci r ceph_inode

fs/ceph/caps.c handle_cap_import() -> __ceph_caps_dirty()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci r ceph_inode
HALF_LOCKED2 0 &ci->i_ceph_lock

fs/ceph/caps.c handle_cap_trunc() -> __ceph_caps_dirty()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci r ceph_inode

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

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
BUF_SIZE 0 ci->i_snapid_map (-1),64
DATA_SOURCE 0 ci r ceph_inode
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mdsc->snap_rwsem
LOCK2 0 &ci->i_ceph_lock
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