Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/ceph/osd_client.c ceph_osdc_list_watchers() -> ceph_osd_data_pages_init()

Type Parameter Key Value
PARAM_VALUE 0 osd_data 4096-ptr_max
PARAM_VALUE 1 pages 16,4096-ptr_max
PARAM_VALUE 2 length 4096
PARAM_VALUE 3 alignment 0
PARAM_VALUE 4 pages_from_pool 0
PARAM_VALUE 5 own_pages 1
BUF_SIZE 1 pages s32min-s32max
DATA_SOURCE 1 pages r ceph_alloc_page_vector
NOCHECK_CALL
UNITS 2 length unit_byte
LOCK2 &pool->lock
LOCK2 &rbd_dev->lock_rwsem
TYPE_LOCK (struct rbd_device)->lock_rwsem

net/ceph/osd_client.c osd_req_op_cls_request_data_pages() -> ceph_osd_data_pages_init()

Type Parameter Key Value
PARAM_VALUE 0 osd_data 4096-ptr_max
PARAM_VALUE 2 length 0-67141127794327571,18379602945915224082-u64max
PARAM_VALUE 3 alignment 0
PARAM_VALUE 4 pages_from_pool 0
BUF_SIZE 0 osd_data 48
CAPPED_DATA 2 length 1
CAPPED_DATA 2 length 1
DATA_SOURCE 1 pages $2
DATA_SOURCE 2 length $3
DATA_SOURCE 3 alignment $4
DATA_SOURCE 4 pages_from_pool $5
DATA_SOURCE 5 own_pages $6
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 length unit_byte
HALF_LOCKED2 &obj_req->state_mutex

net/ceph/osd_client.c osd_req_op_cls_response_data_pages() -> ceph_osd_data_pages_init()

Type Parameter Key Value
PARAM_VALUE 0 osd_data 4096-ptr_max
PARAM_VALUE 1 pages 1-u64max
PARAM_VALUE 3 alignment 0
PARAM_VALUE 4 pages_from_pool 0
PARAM_VALUE 5 own_pages 0
BUF_SIZE 0 osd_data 48
DATA_SOURCE 1 pages $2
DATA_SOURCE 2 length $3
DATA_SOURCE 3 alignment $4
DATA_SOURCE 4 pages_from_pool $5
DATA_SOURCE 5 own_pages $6
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &rbd_dev->lock_rwsem

net/ceph/osd_client.c osd_req_op_copy_from_init() -> ceph_osd_data_pages_init()

Type Parameter Key Value
PARAM_VALUE 0 osd_data 4096-ptr_max
PARAM_VALUE 1 pages 4096-ptr_max
PARAM_VALUE 3 alignment 0
PARAM_VALUE 4 pages_from_pool 0
PARAM_VALUE 5 own_pages 1
BUF_SIZE 1 pages s32min-s32max
DATA_SOURCE 1 pages r ceph_alloc_page_vector
RX_PATH
NOCHECK_CALL
UNITS 2 length unit_byte
HALF_LOCKED2 &inode_out->i_rwsem

net/ceph/osd_client.c osd_req_op_extent_osd_data_pages() -> ceph_osd_data_pages_init()

Type Parameter Key Value
PARAM_VALUE 0 osd_data 4096-ptr_max
PARAM_VALUE 3 alignment 0-4095
BUF_SIZE 0 osd_data 48
BUF_SIZE 1 pages (-1),1-8388608
BUF_SIZE 1 pages (-1),1-8388608
DATA_SOURCE 1 pages $2
DATA_SOURCE 2 length $3
DATA_SOURCE 3 alignment $4
DATA_SOURCE 4 pages_from_pool $5
DATA_SOURCE 5 own_pages $6
NOSPEC 2 length
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 2 length 0-u32max[c]
USER_DATA 3 alignment 0-4094[c]
UNITS 1 pages unit_page
UNITS 2 length unit_byte
HALF_LOCKED2 &inode->i_rwsem

net/ceph/osd_client.c osd_req_op_raw_data_in_pages() -> ceph_osd_data_pages_init()

Type Parameter Key Value
PARAM_VALUE 0 osd_data 4096-ptr_max
PARAM_VALUE 1 pages 16,4096-ptr_max
PARAM_VALUE 2 length 16,4096
PARAM_VALUE 3 alignment 0
PARAM_VALUE 4 pages_from_pool 0
PARAM_VALUE 5 own_pages 1
BUF_SIZE 0 osd_data 48
DATA_SOURCE 0 osd_data r osd_req_op_raw_data_in
DATA_SOURCE 1 pages $2
DATA_SOURCE 2 length $3
DATA_SOURCE 3 alignment $4
DATA_SOURCE 4 pages_from_pool $5
DATA_SOURCE 5 own_pages $6
HARD_MAX 2 length 4096
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 length unit_byte
HALF_LOCKED2 &mdsc->pool_perm_rwsem
HALF_LOCKED2 &obj_req->state_mutex

net/ceph/osd_client.c send_linger() -> ceph_osd_data_pages_init()

Type Parameter Key Value
PARAM_VALUE 0 osd_data 4096-ptr_max
PARAM_VALUE 2 length 4096
PARAM_VALUE 3 alignment 0
PARAM_VALUE 4 pages_from_pool 0
PARAM_VALUE 5 own_pages 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 2 length unit_byte
LOCK2 &lreq->lock
LOCK2 &osdc->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_osd_client)->lock
TYPE_LOCK (struct ceph_osd_linger_request)->lock