Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/ceph/messenger_v2.c prepare_sparse_read_cont() -> (struct ceph_connection_operations)->sparse_read()

Type Parameter Key Value
PARAM_VALUE 0 con 4096-ptr_max
PARAM_VALUE 0 con->in_msg 4096-ptr_max
PARAM_VALUE 0 con->in_msg->data->type 0-5
PARAM_VALUE 0 con->in_msg->data_length 1-u64max
PARAM_VALUE 0 con->in_msg->num_data_items s32min-(-1),1-s32max
PARAM_VALUE 0 con->in_msg->sparse_read_total 1-u64max
PARAM_VALUE 0 con->ops 4096-ptr_max
PARAM_VALUE 0 con->ops->sparse_read 8552505226235363328
PARAM_VALUE 0 con->sock->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 con->sock->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 con->sock->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 con->sock->sk->sk_lock.wq.head.prev 4096-ptr_max
PARAM_VALUE 0 con->sock->sk->sk_memcg->high_work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 con->sock->sk->sk_memcg->high_work.is_queued 0-1
PARAM_VALUE 0 con->sock->sk->sk_protocol 0-255
PARAM_VALUE 0 con->sock->sk->sk_rcu.flags 0-4294967295
PARAM_VALUE 0 con->sock->sk->sk_user_data->work.is_hard 0-1
PARAM_VALUE 0 con->sock->sk->sk_user_data->work.is_lazy 0-1
PARAM_VALUE 0 con->sock->sk->sk_user_data->work.is_soft 0-1
PARAM_VALUE 0 con->state 7-12
PARAM_VALUE 0 con->v2.in_cursor.data 4096-ptr_max
PARAM_VALUE 0 con->v2.in_cursor.sr_resid 0
PARAM_VALUE 0 con->v2.in_iter.iter_type 2-3
PARAM_VALUE 0 con->v2.in_kvec_cnt 0
PARAM_VALUE 0 con->v2.in_state 8
PARAM_VALUE 1 cursor 4096-ptr_max
PARAM_VALUE 1 cursor->data 4096-ptr_max
PARAM_VALUE 1 cursor->sr_resid 0
PARAM_VALUE 2 pbuf 8269922020452450304
PARAM_VALUE 2 *pbuf 0
PARAM_VALUE 2 *(*pbuf) 0
BUF_SIZE 1 cursor 80
DATA_SOURCE 0 con $0
FUZZY_MAX 0 con->state 12
CONTAINER 0 -136-8+0 $(-1)
CONTAINER 1 -136-8+384+672 $(-1)
PARAM_COMPARE 0 &con->v2.in_cursor == $1
PARAM_COMPARE 1 cursor->sr_resid <= $1->total_resid
NOSPEC 1 cursor->bvec_iter.bi_offset
NOSPEC 1 cursor->resid
USER_DATA 0 con->v2.in_cursor.resid 0-u64max
USER_DATA 1 cursor->bvec_iter.bi_offset 1-4096[c]
USER_DATA 1 cursor->bvec_iter.bi_size 1-s32max[c]
USER_DATA 1 cursor->lastlen 1-4096[c]
USER_DATA 1 cursor->need_crc 0-1
USER_DATA 1 cursor->page_offset 0-2559[c]
USER_DATA 1 cursor->resid 0-u64max

net/ceph/messenger_v2.c process_v2_sparse_read() -> (struct ceph_connection_operations)->sparse_read()

Type Parameter Key Value
PARAM_VALUE 0 con 4096-ptr_max
PARAM_VALUE 0 con->in_msg 4096-ptr_max
PARAM_VALUE 0 con->in_msg->data->type 0-5
PARAM_VALUE 0 con->in_msg->data_length 1-u64max
PARAM_VALUE 0 con->in_msg->hdr.data_len 1-u32max
PARAM_VALUE 0 con->in_msg->num_data_items s32min-(-1),1-s32max
PARAM_VALUE 0 con->in_msg->sparse_read_total 1-u64max
PARAM_VALUE 0 con->mutex.dep_map->name 0-255
PARAM_VALUE 0 con->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 con->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 con->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 con->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 con->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 con->mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 con->ops 4096-ptr_max
PARAM_VALUE 0 con->ops->dispatch 0,4096-ptr_max
PARAM_VALUE 0 con->sock->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 con->sock->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 con->sock->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 con->sock->sk->sk_memcg->high_work.flags 0-4294967295
PARAM_VALUE 0 con->sock->sk->sk_memcg->high_work.is_hard 0-1
PARAM_VALUE 0 con->sock->sk->sk_memcg->high_work.is_lazy 0-1
PARAM_VALUE 0 con->sock->sk->sk_memcg->high_work.is_queued 0-1
PARAM_VALUE 0 con->sock->sk->sk_memcg->high_work.is_soft 0-1
PARAM_VALUE 0 con->sock->sk->sk_memcg->kmem.high 0,2251799813685247
PARAM_VALUE 0 con->sock->sk->sk_memcg->kmem.low 0,2251799813685247
PARAM_VALUE 0 con->sock->sk->sk_memcg->kmem.min 0,2251799813685247
PARAM_VALUE 0 con->sock->sk->sk_memcg->swap.high 0-2251799813685247
PARAM_VALUE 0 con->sock->sk->sk_memcg->tcpmem_pressure 0-1
PARAM_VALUE 0 con->sock->sk->sk_prot_creator->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 con->sock->sk->sk_protocol 0-255
PARAM_VALUE 0 con->state 7-12
PARAM_VALUE 0 con->v2.con_mode 2
PARAM_VALUE 0 con->v2.gcm_req 4096-ptr_max
PARAM_VALUE 0 con->v2.gcm_req->assoclen 0
PARAM_VALUE 0 con->v2.gcm_req->cryptlen 0,32,48-100663328
PARAM_VALUE 0 con->v2.gcm_req->dst 0
PARAM_VALUE 0 con->v2.gcm_req->iv 4096-ptr_max
PARAM_VALUE 0 con->v2.gcm_req->src 0,16,4096-ptr_max
PARAM_VALUE 0 con->v2.gcm_wait.completion.done 0
PARAM_VALUE 0 con->v2.in_state 9
PARAM_VALUE 0 *con->sock->sk->sk_backlog.head->dev->name 0-255
PARAM_VALUE 0 *con->v2.in_buf (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 cursor 273269346584760320
PARAM_VALUE 1 cursor->data 4096-ptr_max
PARAM_VALUE 1 cursor->sr_resid 0-s32max
PARAM_VALUE 2 pbuf 9219579637855989760
PARAM_VALUE 2 *pbuf 0
PARAM_VALUE 2 *(*pbuf) 0
CAPPED_DATA 0 con->in_msg->hdr.data_len 1
CAPPED_DATA 0 con->in_msg->sparse_read_total 1
DATA_SOURCE 0 con $0
FUZZY_MAX 0 con->state 12
CONTAINER 0 -136-8+0 $(-1)
PARAM_COMPARE 0 con->in_msg->data_length >= $0->in_msg->sparse_read_total
USER_DATA 0 con->peer_features 0-u64max
USER_DATA 0 con->peer_name.num 0-u64max
USER_DATA 0 con->v2.con_mode 2
USER_DATA 0 con->v2.in_cursor.resid 0-u64max
USER_DATA 0 con->v2.out_cursor.resid 0-u64max
USER_DATA 0 con->v2.out_iter.count 13-3147483660
USER_DATA 0 con->v2.peer_global_seq 0-u64max
USER_DATA 0 con->v2.server_cookie 0-u64max
USER_DATA 1 cursor->bvec_iter.bi_offset 1-4096[c]
USER_DATA 1 cursor->bvec_iter.bi_size 1-s32max[c]
USER_DATA 1 cursor->lastlen 1-4096[c]
USER_DATA 1 cursor->need_crc 0-1
USER_DATA 1 cursor->page_offset 0-2559[c]
USER_DATA 1 cursor->resid 0-u64max
NO_OVERFLOW_SIMPLE 0 con->sock->sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 0 con->sock->sk->sk_receive_queue.prev->next->tail
NO_OVERFLOW_SIMPLE 0 con->sock->sk->sk_receive_queue.prev->tail
NO_OVERFLOW_SIMPLE 0 con->sock->sk->sk_write_queue.next->prev->tail
NO_OVERFLOW_SIMPLE 0 con->sock->sk->sk_write_queue.next->prev->truesize
NO_OVERFLOW_SIMPLE 0 con->sock->sk->sk_write_queue.next->tail
NO_OVERFLOW_SIMPLE 0 con->sock->sk->sk_write_queue.next->truesize
NO_OVERFLOW_SIMPLE 0 con->v1.out_kvec_bytes
LOCK2 &pool->lock
LOCK2 0 &con->mutex
TYPE_LOCK (struct ceph_connection)->mutex

net/ceph/messenger_v1.c read_partial_sparse_msg_data() -> (struct ceph_connection_operations)->sparse_read()

Type Parameter Key Value
PARAM_VALUE 0 con 4096-ptr_max
PARAM_VALUE 0 con->in_msg 1-u64max
PARAM_VALUE 0 con->in_msg->front.iov_len 1-u64max
PARAM_VALUE 0 con->in_msg->num_data_items s32min-(-1),1-s32max
PARAM_VALUE 0 con->in_msg->sparse_read_total 1-u64max
PARAM_VALUE 0 con->mutex.dep_map->name 0-255
PARAM_VALUE 0 con->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 con->mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 con->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 con->ops 4096-ptr_max
PARAM_VALUE 0 con->ops->alloc_msg 0,4096-ptr_max
PARAM_VALUE 0 con->ops->dispatch 0,4096-ptr_max
PARAM_VALUE 0 con->ops->peer_reset 0,4096-ptr_max
PARAM_VALUE 0 con->ops->sparse_read 0,4096-ptr_max
PARAM_VALUE 0 con->sock 1-u64max
PARAM_VALUE 0 con->sock->sk->__sk_common.skc_u16hashes 0-u32max
PARAM_VALUE 0 con->sock->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 con->sock->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 con->sock->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 con->sock->sk->sk_backlog.head->cb->cfm_prim 0
PARAM_VALUE 0 con->sock->sk->sk_backlog.head->cb->ind_prim 0
PARAM_VALUE 0 con->sock->sk->sk_backlog.head->cb->reason 0
PARAM_VALUE 0 con->sock->sk->sk_backlog.head->cb->type 4
PARAM_VALUE 0 con->sock->sk->sk_backlog.head->dev->flags 1-u32max
PARAM_VALUE 0 con->sock->sk->sk_backlog.head->extensions->refcnt.refs.counter 1
PARAM_VALUE 0 con->sock->sk->sk_dst_cache->callback_head.flags 0-4294967295
PARAM_VALUE 0 con->sock->sk->sk_dst_cache->callback_head.is_hard 0-1
PARAM_VALUE 0 con->sock->sk->sk_dst_cache->callback_head.is_lazy 0-1
PARAM_VALUE 0 con->sock->sk->sk_dst_cache->callback_head.is_queued 0-1
PARAM_VALUE 0 con->sock->sk->sk_dst_cache->callback_head.is_soft 0-1
PARAM_VALUE 0 con->sock->sk->sk_error_queue.next->prev 2011684551238094848
PARAM_VALUE 0 con->sock->sk->sk_filter->refcnt.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 con->sock->sk->sk_lock.owned 0
PARAM_VALUE 0 con->sock->sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 0 con->sock->sk->sk_lock.wq.head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 con->sock->sk->sk_owner->refcnt.counter 0-s32max
PARAM_VALUE 0 con->sock->sk->sk_reuseport_cb->rcu.flags 0-4294967295
PARAM_VALUE 0 con->state 12
PARAM_VALUE 0 con->v1.in_base_pos 53-s32max
PARAM_VALUE 0 con->v1.in_hdr.data_len 1-67108864
PARAM_VALUE 0 con->v1.in_hdr.front_len 0-s32max
PARAM_VALUE 0 con->v1.in_hdr.middle_len 0-16777216
PARAM_VALUE 0 con->v1.in_sr_kvec.iov_base 0
PARAM_VALUE 0 con->v1.in_sr_kvec.iov_len 0
PARAM_VALUE 0 con->v1.in_tag 7
PARAM_VALUE 0 *con->sock->sk->sk_backlog.head->cb->data_end (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *con->sock->sk->sk_backlog.head->data->hdr 0-4294967295
PARAM_VALUE 0 *con->sock->sk->sk_backlog.head->dev->name 0-255
PARAM_VALUE 1 cursor 4096-ptr_max
PARAM_VALUE 1 cursor->total_resid 1-u64max
PARAM_VALUE 2 pbuf 4096-ptr_max
PARAM_VALUE 2 *pbuf 0
PARAM_VALUE 2 *(*pbuf) 0
BUF_SIZE 1 cursor 80
CAPPED_DATA 0 con 1
CAPPED_DATA 0 con->v1.in_hdr.crc 1
DATA_SOURCE 0 con $0
CONTAINER 0 -136-8+0 $(-1)
CONTAINER 1 -136-8+128+424 $(-1)
CONTAINER 2 -136-8+0+536+672 $(-1)
PARAM_COMPARE 0 &con->in_msg->cursor == $1
NOSPEC 1 cursor->resid
MEM_ZERO 0 &con->v1.in_sr_kvec
MEM_ZERO 2 pbuf
USER_DATA 0 con->in_msg->cursor.bio_iter.iter.bi_bvec_done 1-4096[c]
USER_DATA 0 con->in_msg->cursor.bvec_iter.bi_size 1-s32max[c]
USER_DATA 0 con->in_msg->cursor.iov_iter.iov_offset 0-u64max[c]
USER_DATA 0 con->in_msg->cursor.lastlen 1-4096[c]
USER_DATA 0 con->in_msg->cursor.need_crc 0-1
USER_DATA 0 con->in_msg->cursor.page_offset 0-2559[c]
USER_DATA 0 con->in_msg->cursor.resid 0-u64max
USER_DATA 1 cursor->bio_iter.iter.bi_bvec_done 1-4096[c]
USER_DATA 1 cursor->resid 0-u64max
LOCK2 0 &con->mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_connection)->mutex