Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

net/ceph/messenger_v2.c prepare_message_secure() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1-24577
PARAM_VALUE 1 flags 3072
DATA_SOURCE 0 num_pages r calc_pages_for

net/ceph/messenger_v2.c prepare_read_tail_secure() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 0-24577
PARAM_VALUE 1 flags 3072
DATA_SOURCE 0 num_pages r calc_pages_for
LOCK2 &con->mutex
LOCK2 &pool->lock
TYPE_LOCK (struct ceph_connection)->mutex

drivers/block/rbd.c __rbd_object_map_load() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 1 flags 3264
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &rbd_dev->header_rwsem
HALF_LOCKED2 &rbd_dev->lock_rwsem

drivers/block/rbd.c rbd_cls_object_map_update() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1
PARAM_VALUE 1 flags 3072
LOCK2 &obj_req->state_mutex
HALF_LOCKED2 &img_req->state_mutex
TYPE_LOCK (struct rbd_obj_request)->state_mutex

drivers/block/rbd.c rbd_obj_read_sync() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 0-977
PARAM_VALUE 1 flags 3264
DATA_SOURCE 0 num_pages r calc_pages_for
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &rbd_dev->header_rwsem
HALF_LOCKED2 &rbd_dev->lock_rwsem

drivers/block/rbd.c rbd_osd_setup_stat() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1
PARAM_VALUE 1 flags 3072
LOCK2 &obj_req->state_mutex
HALF_LOCKED2 &img_req->state_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rbd_obj_request)->state_mutex

fs/ceph/addr.c __ceph_pool_perm_get() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1
PARAM_VALUE 1 flags 3264
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mdsc->pool_perm_rwsem
TYPE_LOCK (struct ceph_mds_client)->pool_perm_rwsem

net/ceph/cls_lock_client.c ceph_cls_assert_locked() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1
PARAM_VALUE 1 flags 3072
LOCK2 &obj_req->state_mutex
HALF_LOCKED2 &img_req->state_mutex
TYPE_LOCK (struct rbd_obj_request)->state_mutex

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

Type Parameter Key Value
PARAM_VALUE 1 flags 3264
DATA_SOURCE 0 num_pages r calc_pages_for
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 num_pages (-3281847)-3525989
HALF_LOCKED2 &inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 1 flags 3264
DATA_SOURCE 0 num_pages r calc_pages_for
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 num_pages s32min-s32max
LOCK2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem

net/ceph/osd_client.c alloc_msg_with_page_vector() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1-1048576
PARAM_VALUE 1 flags 3072
HALF_LOCKED2 &pool->lock

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

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1
PARAM_VALUE 1 flags 3072
LOCK2 &pool->lock
LOCK2 &rbd_dev->lock_rwsem
TYPE_LOCK (struct rbd_device)->lock_rwsem

net/ceph/osd_client.c ceph_osdc_notify() -> ceph_alloc_page_vector()

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1
PARAM_VALUE 1 flags 3072
HALF_LOCKED2 &pool->lock

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

Type Parameter Key Value
PARAM_VALUE 0 num_pages 1
PARAM_VALUE 1 flags 3264
RX_PATH
HALF_LOCKED2 &inode_out->i_rwsem