Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 3 files:
Smatch caller information:
net/ceph/messenger_v2.c calc_sg_cnt_cursor() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 9015903013294497792 |
| PARAM_VALUE | 0 | cursor->bio_iter.iter.bi_bvec_done | 0-4096 |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 0 | cursor->sr_resid | 0 |
| PARAM_VALUE | 1 | bytes | 1-u32max |
| DATA_SOURCE | 0 | cursor | $0 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOSPEC | 1 | bytes | |
| NOSPEC | 1 | bytes | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
| USER_DATA | 1 | bytes | 1-1000000000[c] |
| UNITS | 1 | bytes | unit_byte |
| HALF_LOCKED2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock |
net/ceph/messenger_v2.c get_bvec_at() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->resid | 0 |
| PARAM_VALUE | 1 | bytes | 0 |
| BUF_SIZE | 0 | cursor | (-1),80 |
| BUF_SIZE | 0 | cursor | (-1),80 |
| DATA_SOURCE | 0 | cursor | $0 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->iov_iter.iov_offset | |
| NOSPEC | 0 | cursor->lastlen | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->iov_iter.iov_offset | 0-u64max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 0 |
net/ceph/messenger_v2.c init_sgs_cursor() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 9015903013294497792 |
| PARAM_VALUE | 0 | cursor->bio_iter.iter.bi_bvec_done | 0-4096 |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 0 | cursor->sr_resid | 0 |
| PARAM_VALUE | 1 | bytes | 1-u32max |
| DATA_SOURCE | 0 | cursor | $1 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOSPEC | 1 | bytes | |
| NOSPEC | 1 | bytes | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
| USER_DATA | 1 | bytes | 1-1000000000[c] |
| UNITS | 1 | bytes | unit_byte |
| HALF_LOCKED2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock |
net/ceph/messenger_v2.c prepare_read_data_cont() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| NOCHECK_CALL | |||
| UNITS | 1 | bytes | unit_byte |
net/ceph/messenger_v2.c prepare_sparse_read_cont() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->sr_resid | 0 |
| BUF_SIZE | 0 | cursor | 80 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 0-u64max |
| UNITS | 1 | bytes | unit_byte |
net/ceph/messenger_v2.c process_v2_sparse_read() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 273269346584760320 |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 0 | cursor->sr_resid | 0-s32max |
| PARAM_VALUE | 1 | bytes | 1-4096,18446744071562067968-u64max |
| CAPPED_DATA | 1 | bytes | 1 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
| USER_DATA | 1 | bytes | 1-4096[c] |
| UNITS | 1 | bytes | unit_byte |
| LOCK2 | &con->mutex | ||
| LOCK2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v2.c queue_data_cont() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->resid | 0-u64max |
| UNITS | 1 | bytes | unit_byte |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v2.c revoke_at_prepare_read_data_cont() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 1 | bytes | 1-s32max,18446744071562067968-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 0-u64max |
| UNITS | 1 | bytes | unit_byte |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &monc->mutex | ||
| HALF_LOCKED2 | &osd->lock | ||
| HALF_LOCKED2 | &osdc->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v2.c revoke_at_queue_data_cont() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 1 | bytes | 1-s32max,18446744071562067968-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 0-u64max |
| UNITS | 1 | bytes | unit_byte |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &monc->mutex | ||
| HALF_LOCKED2 | &osdc->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v1.c read_partial_msg_data() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->resid | 0 |
| PARAM_VALUE | 0 | cursor->total_resid | 1-u64max |
| PARAM_VALUE | 1 | bytes | 0 |
| BUF_SIZE | 0 | cursor | 80 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 0 |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v1.c read_partial_msg_data() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data->type | 1-5 |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 0 | cursor->total_resid | 1-u64max |
| PARAM_VALUE | 1 | bytes | 1-s32max |
| BUF_SIZE | 0 | cursor | 80 |
| CAPPED_DATA | 1 | bytes | 1 |
| DATA_SOURCE | 1 | bytes | r ceph_tcp_recvpage |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v1.c read_partial_msg_data_bounce() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->resid | 0 |
| PARAM_VALUE | 0 | cursor->total_resid | 1-u64max |
| PARAM_VALUE | 1 | bytes | 0 |
| BUF_SIZE | 0 | cursor | 80 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 0 |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v1.c read_partial_msg_data_bounce() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data->type | 1-5 |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 0 | cursor->total_resid | 1-u64max |
| PARAM_VALUE | 1 | bytes | 1-s32max |
| BUF_SIZE | 0 | cursor | 80 |
| CAPPED_DATA | 1 | bytes | 1 |
| DATA_SOURCE | 1 | bytes | r ceph_tcp_recvpage |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v1.c read_partial_sparse_msg_extent() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data->type | 1-5 |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 0 | cursor->sr_resid | 1-s32max |
| PARAM_VALUE | 1 | bytes | 1-s32max |
| BUF_SIZE | 0 | cursor | 80 |
| DATA_SOURCE | 1 | bytes | r ceph_tcp_recvpage |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->iov_iter.iov_offset | |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->iov_iter.count | 0-u64max |
| USER_DATA | 0 | cursor->iov_iter.iov_offset | 0-u64max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
net/ceph/messenger_v1.c write_partial_message_data() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->resid | 0 |
| PARAM_VALUE | 0 | cursor->total_resid | 1-u64max |
| PARAM_VALUE | 1 | bytes | 0 |
| BUF_SIZE | 0 | cursor | 80 |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->resid | 0 |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/messenger_v1.c write_partial_message_data() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data->type | 1-5 |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 0 | cursor->total_resid | 1-u64max |
| PARAM_VALUE | 1 | bytes | 1-s32max |
| BUF_SIZE | 0 | cursor | 80 |
| DATA_SOURCE | 1 | bytes | r ceph_tcp_sendpage |
| NOSPEC | 0 | cursor->resid | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
| LOCK2 | &con->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ceph_connection)->mutex |
net/ceph/osd_client.c advance_cursor() -> ceph_msg_data_advance()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | cursor | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data | 4096-ptr_max |
| PARAM_VALUE | 0 | cursor->data->type | 1-5 |
| PARAM_VALUE | 0 | cursor->iov_iter.bvec | 4096-u64max |
| PARAM_VALUE | 0 | cursor->lastlen | 0-4096 |
| PARAM_VALUE | 0 | cursor->resid | 1-u64max |
| PARAM_VALUE | 1 | bytes | 1-u32max |
| BUF_SIZE | 0 | cursor | (-1),80 |
| BUF_SIZE | 0 | cursor | (-1),80 |
| CAPPED_DATA | 1 | bytes | 1 |
| CAPPED_DATA | 1 | bytes | 1 |
| DATA_SOURCE | 0 | cursor | $0 |
| NOSPEC | 0 | cursor->bvec_iter.bi_offset | |
| NOSPEC | 0 | cursor->iov_iter.iov_offset | |
| NOSPEC | 0 | cursor->lastlen | |
| NOSPEC | 0 | cursor->resid | |
| NOSPEC | 1 | bytes | |
| NOCHECK_CALL | |||
| USER_DATA | 0 | cursor->bvec_iter.bi_offset | 1-4096[c] |
| USER_DATA | 0 | cursor->bvec_iter.bi_size | 1-s32max[c] |
| USER_DATA | 0 | cursor->iov_iter.iov_offset | 0-u64max[c] |
| USER_DATA | 0 | cursor->lastlen | 1-4096[c] |
| USER_DATA | 0 | cursor->need_crc | 0-1 |
| USER_DATA | 0 | cursor->page_offset | 0-2559[c] |
| USER_DATA | 0 | cursor->resid | 1-u64max |
| UNITS | 1 | bytes | unit_byte |
| HALF_LOCKED2 | &con->mutex | ||
| HALF_LOCKED2 | &o->o_requests_lock | ||
| HALF_LOCKED2 | &pool->lock |