Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/ceph/addr.c finish_netfs_read() -> ceph_sparse_ext_map_end()

Type Parameter Key Value
PARAM_VALUE 0 op 4096-ptr_max
HALF_LOCKED2 &pool->lock

fs/ceph/file.c __ceph_sync_read() -> ceph_sparse_ext_map_end()

Type Parameter Key Value
PARAM_VALUE 0 op 4096-ptr_max
PARAM_VALUE 0 op->extent.sparse_ext 4096-ptr_max
PARAM_VALUE 0 op->extent.sparse_ext_cnt 1-16
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 op->extent.sparse_ext_cnt 1-16[c]
HALF_LOCKED2 &inode->i_rwsem

fs/ceph/file.c ceph_aio_complete_req() -> ceph_sparse_ext_map_end()

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

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

Type Parameter Key Value
PARAM_VALUE 0 op 4096-ptr_max
PARAM_VALUE 0 op->extent.sparse_ext 4096-ptr_max
PARAM_VALUE 0 op->extent.sparse_ext_cnt 1-16
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 op->extent.sparse_ext_cnt 1-16[c]
LOCK2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem

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

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

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

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

net/ceph/osd_client.c prep_next_sparse_read() -> ceph_sparse_ext_map_end()

Type Parameter Key Value
PARAM_VALUE 0 op 4096-ptr_max
PREEMPT_ADD <- disables preempt
LOCK2 &o->o_requests_lock
HALF_LOCKED2 &con->mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_osd)->o_requests_lock