Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/ceph/inode.c ceph_dir_clear_ordered() -> __ceph_dir_clear_ordered()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
NOCHECK_CALL
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_readdir_prepopulate() -> __ceph_dir_clear_ordered()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci r ceph_inode
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
LOCK2 &dn->d_lockref.lock
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
TYPE_LOCK (struct lockref)->lock

fs/ceph/dir.c ceph_d_prune() -> __ceph_dir_clear_ordered()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
DATA_SOURCE 0 ci r ceph_inode
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 &req->r_fill_mutex
HALF_LOCKED2 &session->s_mutex

fs/ceph/file.c ceph_dir_clear_ordered() -> __ceph_dir_clear_ordered()

Type Parameter Key Value
PARAM_VALUE 0 ci 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dir->d_inode->i_rwsem
HALF_LOCKED2 &dn->d_lockref.lock