Defined in 1 files as a function:

Referenced in 6 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 off 0
PARAM_VALUE 1 len 32,48-100663328
DATA_SOURCE 1 len r tail_onwire_len

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

Type Parameter Key Value
PARAM_VALUE 0 off 0
PARAM_VALUE 1 len 0,32,48-100663328
DATA_SOURCE 1 len r tail_onwire_len
LOCK2 &con->mutex
LOCK2 &pool->lock
TYPE_LOCK (struct ceph_connection)->mutex

net/ceph/messenger_v2.c setup_message_sgs() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 0 off 0-s32max,18446744071562067968-u64max
PARAM_VALUE 1 len 1-u32max
DATA_SOURCE 0 off $7
BIT_INFO 1 len 0x0,0x7fffffff
UNITS 1 len unit_byte
LOCK2 &con->mutex
LOCK2 &pool->lock
TYPE_LOCK (struct ceph_connection)->mutex

net/ceph/messenger.c ceph_msg_data_destroy() -> calc_pages_for()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 len unit_byte
HALF_LOCKED2 &con->mutex
HALF_LOCKED2 &mdsc->mutex
HALF_LOCKED2 &mdsc->snap_rwsem
HALF_LOCKED2 &osd->lock
HALF_LOCKED2 &osdc->lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &session->s_mutex

net/ceph/messenger.c ceph_msg_data_pages_cursor_init() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 1 len 1-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 1 len unit_byte
HALF_LOCKED2 &con->mutex
HALF_LOCKED2 &pool->lock

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

Type Parameter Key Value
PARAM_VALUE 0 off 0
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_obj_read_sync() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 0 off 0
PARAM_VALUE 1 len 0-4000000
DATA_SOURCE 1 len $4
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 len unit_byte
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &rbd_dev->header_rwsem
HALF_LOCKED2 &rbd_dev->lock_rwsem

drivers/block/rbd.c rbd_request_lock() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 0 off 0
PARAM_VALUE 1 len 0
UNITS 1 len unit_byte
HALF_LOCKED2 &pool->lock

drivers/block/rbd.c setup_copyup_bvecs() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 0 off 0
DATA_SOURCE 1 len $1
LOCK2 &obj_req->state_mutex
HALF_LOCKED2 &img_req->state_mutex
TYPE_LOCK (struct rbd_obj_request)->state_mutex

fs/ceph/addr.c ceph_allocate_page_array() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 0 off 0
PARAM_VALUE 1 len 0-u32max
NOSPEC 1 len
NOSPEC 1 len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 len 0-s32max[c]
HALF_LOCKED2 &mapping->invalidate_lock

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

Type Parameter Key Value
UNITS 1 len unit_byte
HALF_LOCKED2 &pool->lock

fs/ceph/addr.c writepages_finish() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 0 off 0-u32max
UNITS 1 len unit_byte
HALF_LOCKED2 &pool->lock

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

Type Parameter Key Value
PARAM_VALUE 1 len 1-1000000000
NOSPEC 0 off
NOSPEC 0 off
NOSPEC 1 len
NOSPEC 1 len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 off 0-13442450941[c]
USER_DATA 1 len 0-u32max[c]
HALF_LOCKED2 &inode->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 1 len 0-u32max
NOSPEC 0 off
NOSPEC 0 off
NOSPEC 1 len
NOSPEC 1 len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 off 0-18446744073709551614
USER_DATA 1 len 0-s32max[c]
UNITS 0 off unit_byte
UNITS 1 len unit_byte
LOCK2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 off 0
PARAM_VALUE 1 len 1-u32max
UNITS 1 len unit_byte
HALF_LOCKED2 &pool->lock

net/ceph/osd_client.c ceph_osd_data_release() -> calc_pages_for()

Type Parameter Key Value
PARAM_VALUE 0 off 0-4095
UNITS 1 len unit_byte