Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/nvme/host/tcp.c nvme_tcp_handle_r2t() -> nvme_tcp_setup_h2c_data_pdu()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->data_sent 0-u32max
PARAM_VALUE 0 req->entry.next 4096-ptr_max
PARAM_VALUE 0 req->h2cdata_left 1-u32max
PARAM_VALUE 0 req->lentry.next 4096-ptr_max
PARAM_VALUE 0 req->pdu_len 0
CAPPED_DATA 0 req->data_sent 1
CAPPED_DATA 0 &req->entry 1
CAPPED_DATA 0 &req->lentry 1
DATA_SOURCE 0 req r blk_mq_rq_to_pdu
PARAM_COMPARE 0 &req->entry == $0->entry.next
PARAM_COMPARE 0 &req->lentry == $0->lentry.next
NOCHECK_CALL

drivers/nvme/host/tcp.c nvme_tcp_try_send_data() -> nvme_tcp_setup_h2c_data_pdu()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->queue->sock 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_bind_node->pprev 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_bind_node.pprev 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_net.net->ipv4.ping_port_rover 1-u16max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_net.net->mctp.bind_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_net.net->notrefcnt_tracker.dead 1
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_net.net->notrefcnt_tracker.quarantine.prev 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_net.net->refcnt_tracker.dead 1
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_node.next->pprev 1-u64max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_prot->h.smc_hash->lock.owner (-1)
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_prot->h.smc_hash->lock.owner_cpu 4294967295
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_u16hashes 0-u32max
PARAM_VALUE 0 req->queue->sock->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 req->queue->sock->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 req->queue->sock->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 req->queue->sock->sk->sk_backlog.head->cb->type 4
PARAM_VALUE 0 req->queue->sock->sk->sk_backlog.head->dev->flags 1-u32max
PARAM_VALUE 0 req->queue->sock->sk->sk_backlog.head->extensions->refcnt.refs.counter 1
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->callback_head.func 1-u64max
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->ops->pcpuc_entries.lock.owner (-1)
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->ops->pcpuc_entries.lock.owner_cpu u32max
PARAM_VALUE 0 req->queue->sock->sk->sk_error_queue.next->prev 2011684551238094848
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.dep_map->name 0-255
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.wq.head.prev->next 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.wq.head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->sk_memcg->high_work.entry.next->prev 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->sk_prot_creator->owner->refcnt.counter 0-s32max
PARAM_VALUE 0 req->queue->sock->sk->sk_reuseport_cb->rcu.is_hard 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_reuseport_cb->rcu.is_lazy 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_reuseport_cb->rcu.is_soft 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_user_data->work.is_queued 0-1
PARAM_VALUE 0 req->queue->sock->sk->sobject 0-u16max
PARAM_VALUE 0 req->queue->sock->sk->tcp_retransmit_timer->entry.pprev 4096-ptr_max
PARAM_VALUE 0 req->state 2
PARAM_VALUE 0 *req->queue->sock->sk->sk_backlog.head->cb->data_end (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 *req->queue->sock->sk->sk_backlog.head->data->hdr 0-4294967295
PARAM_VALUE 0 *req->queue->sock->sk->sk_backlog.head->dev->name 0-255
CAPPED_DATA 0 req 1
DATA_SOURCE 0 req $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &queue->send_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct nvme_tcp_queue)->send_mutex

drivers/nvme/host/tcp.c nvme_tcp_try_send_ddgst() -> nvme_tcp_setup_h2c_data_pdu()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->h2cdata_left 1-u32max
PARAM_VALUE 0 req->queue 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_bind_node->pprev 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_bind_node.pprev 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->__sk_common.skc_net.net->ipv4.ping_port_rover 1-u16max
PARAM_VALUE 0 req->queue->sock->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 req->queue->sock->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 req->queue->sock->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 0 req->queue->sock->sk->sk_backlog.head->cb->type 4
PARAM_VALUE 0 req->queue->sock->sk->sk_backlog.head->dev->flags 1-u32max
PARAM_VALUE 0 req->queue->sock->sk->sk_backlog.head->extensions->refcnt.refs.counter 1
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->callback_head.flags 0-4294967295
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->callback_head.is_hard 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->callback_head.is_lazy 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->callback_head.is_queued 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_dst_cache->callback_head.is_soft 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_error_queue.next->prev 2011684551238094848
PARAM_VALUE 0 req->queue->sock->sk->sk_filter->refcnt.refs.counter (-1073741824),0-s32max
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.wq.head.next 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.wq.head.prev->next 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->sk_lock.wq.head.prev->next->next 4096-ptr_max
PARAM_VALUE 0 req->queue->sock->sk->sk_memcg->high_work.is_queued 0-1
PARAM_VALUE 0 req->queue->sock->sk->sk_owner->refcnt.counter 0-s32max
PARAM_VALUE 0 req->queue->sock->sk->sk_reuseport_cb->rcu.flags 0-4294967295
PARAM_VALUE 0 req->queue->sock->sk->sobject 0-u16max
PARAM_VALUE 0 req->state 3
PARAM_VALUE 0 *req->queue->sock->sk->sk_backlog.head->data->hdr 0-4294967295
PARAM_VALUE 0 *req->queue->sock->sk->sk_backlog.head->dev->name 0-255
CAPPED_DATA 0 req 1
DATA_SOURCE 0 req $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &queue->send_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct nvme_tcp_queue)->send_mutex