Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

net/kcm/kcmsock.c kcm_splice_read() -> skb_splice_bits()

Type Parameter Key Value
PARAM_VALUE 0 skb 4096-ptr_max
PARAM_VALUE 1 sk 4096-ptr_max
PARAM_VALUE 1 sk->sk_receive_queue.next->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 1 sk->sk_receive_queue.next->sk->ns_tracker->dead 0-1
PARAM_VALUE 1 sk->sk_receive_queue.next->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 5 flags 64
BUF_SIZE 0 skb (-1),1-s32max
BUF_SIZE 0 skb (-1),1-s32max
BUF_SIZE 3 pipe s32min-(-1),1-s32max
BUF_SIZE 3 pipe s32min-(-1),1-s32max
CAPPED_DATA 4 tlen 1
DATA_SOURCE 0 skb r skb_recv_datagram
DATA_SOURCE 3 pipe $2
DATA_SOURCE 4 tlen $3 [m]
RX_PATH
TASK_NOT_RUNNING
USER_DATA 4 tlen 1-2147479552[c]
NO_OVERFLOW_SIMPLE 3 pipe->max_usage
NO_OVERFLOW_SIMPLE 3 pipe->nr_accounted
NO_OVERFLOW_SIMPLE 3 pipe->ring_size
UNITS 1 sk unit_byte
UNITS 2 offset unit_byte
UNITS 4 tlen unit_byte
HALF_LOCKED2 sk

net/ipv4/tcp.c tcp_splice_data_recv() -> skb_splice_bits()

Type Parameter Key Value
PARAM_VALUE 0 skb 4096-ptr_max
PARAM_VALUE 0 skb->cb 4096-ptr_max
PARAM_VALUE 0 skb->len 1-u32max
PARAM_VALUE 2 offset 0-4294967294
CAPPED_DATA 2 offset 1
CAPPED_DATA 4 tlen 1
DATA_SOURCE 0 skb $1
DATA_SOURCE 2 offset $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 4 tlen 0-2147479552[c]
NO_OVERFLOW_SIMPLE 2 offset
UNITS 1 sk unit_byte
UNITS 2 offset unit_byte
UNITS 4 tlen unit_byte

net/unix/af_unix.c unix_stream_splice_actor() -> skb_splice_bits()

Type Parameter Key Value
PARAM_VALUE 0 skb 1-u64max
PARAM_VALUE 0 skb->dev->rtnl_link_ops->priv_size 0,8,32,40,48,56,88,112,120,144,160,224,240,256,296,616,624,728,736,744,1056,1128,1336,1616,2176,2240,2272,2560,3296,3552,3720,9688-u64max
BUF_SIZE 3 pipe s32min-(-1),1-s32max
BUF_SIZE 3 pipe s32min-(-1),1-s32max
CAPPED_DATA 4 tlen 1
DATA_SOURCE 0 skb $0
DATA_SOURCE 4 tlen $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 4 tlen 1-s32max[c]
USER_DATA 5 flags 0-16[c]
UNITS 1 sk unit_byte
UNITS 2 offset unit_byte
LOCK2 &u->iolock
TYPE_LOCK (struct unix_sock)->iolock

net/tls/tls_sw.c tls_sw_splice_read() -> skb_splice_bits()

Type Parameter Key Value
PARAM_VALUE 0 skb->extensions 4096-ptr_max
PARAM_VALUE 1 sk 4096-ptr_max
PARAM_VALUE 1 sk->__sk_common.skc_net.net->ipv4.fib_main->tb_data->kv->key 0-4294967295
PARAM_VALUE 1 sk->__sk_common.skc_net.net->loopback_dev->refcnt_tracker.list.next->next 4096-ptr_max
PARAM_VALUE 1 sk->__sk_common.skc_net.net->mctp.bind_lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 1 sk->__sk_common.skc_node.next->pprev 1-u64max
PARAM_VALUE 1 sk->__sk_common.skc_prot->owner->refcnt.counter 0-s32max
PARAM_VALUE 1 sk->listener->__sk_common.skc_net.net->notrefcnt_tracker.dead 1
PARAM_VALUE 1 sk->listener->__sk_common.skc_net.net->refcnt_tracker.dead 1
PARAM_VALUE 1 sk->listener->sk_bpf_storage->owner_refcnt.refs.counter s32min-s32max
PARAM_VALUE 1 sk->listener->sk_callback_lock.raw_lock.cnts.counter 0-s32max
PARAM_VALUE 1 sk->listener->sk_lock.owned 1
PARAM_VALUE 1 sk->listener->sk_rcu.next 0
PARAM_VALUE 1 sk->listener->sk_reuseport_cb 0
PARAM_VALUE 1 sk->listener->sk_user_data 0
PARAM_VALUE 1 sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 1 sk->ns_tracker->dead 0-1
PARAM_VALUE 1 sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 1 sk->sk_backlog.head->extensions->refcnt.refs.counter 1
PARAM_VALUE 1 sk->sk_backlog.head->sk->__sk_common.skc_net.net->notrefcnt_tracker.dead 1
PARAM_VALUE 1 sk->sk_backlog.head->sk->__sk_common.skc_net.net->refcnt_tracker.dead 1
PARAM_VALUE 1 sk->sk_backlog.head->sk->__sk_common.skc_prot 4096-ptr_max
PARAM_VALUE 1 sk->sk_backlog.head->sk->__sk_common.skc_state 0-9,11-255
PARAM_VALUE 1 sk->sk_backlog.head->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 1 sk->sk_backlog.head->sk->ns_tracker->dead 0-1
PARAM_VALUE 1 sk->sk_backlog.head->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_callback_lock.owner (-1)
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_callback_lock.owner_cpu u32max
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_callback_lock.raw_lock.cnts.counter 0-s32max
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_filter->rcu.func 1-u64max
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_owner->refcnt.counter 0-s32max
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_prot_creator->owner->refcnt.counter 0-s32max
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_rcu.func 1-u64max
PARAM_VALUE 1 sk->sk_backlog.head->sk->sk_reuseport_cb->rcu.func 1-u64max
PARAM_VALUE 1 sk->sk_callback_lock.dep_map->name 0-255
PARAM_VALUE 1 sk->sk_dst_cache->callback_head.flags 0-4294967295
PARAM_VALUE 1 sk->sk_dst_cache->callback_head.is_hard 0-1
PARAM_VALUE 1 sk->sk_dst_cache->callback_head.is_lazy 0-1
PARAM_VALUE 1 sk->sk_dst_cache->callback_head.is_queued 0-1
PARAM_VALUE 1 sk->sk_dst_cache->callback_head.is_soft 0-1
PARAM_VALUE 1 sk->sk_dst_cache->dev_rcu->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
PARAM_VALUE 1 sk->sk_dst_cache->ops->pcpuc_entries.lock.owner (-1)
PARAM_VALUE 1 sk->sk_dst_cache->ops->pcpuc_entries.lock.owner_cpu u32max
PARAM_VALUE 1 sk->sk_dst_cache->ops->pcpuc_entries.lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 1 sk->sk_err (-2147483647)-(-1),1-s32max
PARAM_VALUE 1 sk->sk_error_queue.next->prev 2011684551238094848
PARAM_VALUE 1 sk->sk_lock.dep_map->name 0-255
PARAM_VALUE 1 sk->sk_lock.owned 0-1
PARAM_VALUE 1 sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 1 sk->sk_lock.wq.head.prev->next 4096-ptr_max
PARAM_VALUE 1 sk->sk_lock.wq.head.prev->next->next 4096-ptr_max
PARAM_VALUE 1 sk->sk_memcg->high_work.entry.next->prev 4096-ptr_max
PARAM_VALUE 1 sk->sk_memcg->tcpmem_pressure 0-1
PARAM_VALUE 1 sk->sk_reuseport_cb->rcu.func 1-u64max
PARAM_VALUE 1 sk->sk_reuseport_cb->rcu.next 0
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.__pad s16min-s16max
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.__rcuref.refcnt.counter s32min-s32max
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.__use s32min-s32max
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.dst_trace_seq.counter s32min-s32max
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.error s16min-s16max
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.header_len 0-u16max
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.obsolete s16min-s16max
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.tclassid 0-4294967295
PARAM_VALUE 1 sk->sk_rx_dst->u.dst.trailer_len 0-u16max
PARAM_VALUE 1 sk->sk_user_data->connect_cookie 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->cp_conn->c_proposed_version 769
PARAM_VALUE 1 sk->sk_user_data->cp_reconnect_jiffies 0
PARAM_VALUE 1 sk->sk_user_data->cp_recv_w.cpu s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->cp_recv_w.timer.flags 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->cp_recv_w.timer.is_hard 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_recv_w.timer.is_lazy 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_recv_w.timer.is_queued 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_recv_w.timer.is_soft 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_send_w.cpu s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->cp_send_w.timer.flags 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->cp_send_w.timer.is_hard 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_send_w.timer.is_lazy 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_send_w.timer.is_queued 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_send_w.timer.is_soft 0-1
PARAM_VALUE 1 sk->sk_user_data->cp_state.counter 0-s32max
PARAM_VALUE 1 sk->sk_user_data->ctrl->ctrl.failfast_work.cpu s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->ctrl->ctrl.failfast_work.timer.flags 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->ctrl->ctrl.failfast_work.timer.is_hard 0-1
PARAM_VALUE 1 sk->sk_user_data->ctrl->ctrl.failfast_work.timer.is_lazy 0-1
PARAM_VALUE 1 sk->sk_user_data->ctrl->ctrl.failfast_work.timer.is_queued 0-1
PARAM_VALUE 1 sk->sk_user_data->ctrl->ctrl.failfast_work.timer.is_soft 0-1
PARAM_VALUE 1 sk->sk_user_data->ctrl->ctrl.state 2
PARAM_VALUE 1 sk->sk_user_data->dev->carrier_down_count.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->dev->refcnt_tracker.untracked.refs.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->door_bell.done 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->door_bell.wait.lock.owner (-1)
PARAM_VALUE 1 sk->sk_user_data->door_bell.wait.lock.owner_cpu 4294967295
PARAM_VALUE 1 sk->sk_user_data->kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->login_work.cpu s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->login_work.timer.flags 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->login_work.timer.is_hard 0-1
PARAM_VALUE 1 sk->sk_user_data->login_work.timer.is_lazy 0-1
PARAM_VALUE 1 sk->sk_user_data->login_work.timer.is_queued 0-1
PARAM_VALUE 1 sk->sk_user_data->login_work.timer.is_soft 0-1
PARAM_VALUE 1 sk->sk_user_data->mpa_timer->type 5,7
PARAM_VALUE 1 sk->sk_user_data->private->s_delegated_inos.xa_flags 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->qp->tx_ctx.tx_suspend 1
PARAM_VALUE 1 sk->sk_user_data->read.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->reestablish_timeout 0,750
PARAM_VALUE 1 sk->sk_user_data->ref.refcount.refs.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->sc_kref.refcount.refs.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->sc_node->nd_item.ci_dentry->d_fsdata->s_dependent_count s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->sc_page->_refcount.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->sc_page->page_type 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->session->state s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->sock_state.counter s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->work.cpu s32min-s32max
PARAM_VALUE 1 sk->sk_user_data->work.flags 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->work.is_hard 0-1
PARAM_VALUE 1 sk->sk_user_data->work.is_lazy 0-1
PARAM_VALUE 1 sk->sk_user_data->work.is_queued 0-1
PARAM_VALUE 1 sk->sk_user_data->work.is_soft 0-1
PARAM_VALUE 1 sk->sk_user_data->work.node.node.next 0
PARAM_VALUE 1 sk->sk_user_data->work.node.node.prev 0
PARAM_VALUE 1 sk->sk_user_data->work.timer.flags 0-4294967295
PARAM_VALUE 1 sk->sk_user_data->work.timer.is_hard 0-1
PARAM_VALUE 1 sk->sk_user_data->work.timer.is_lazy 0-1
PARAM_VALUE 1 sk->sk_user_data->work.timer.is_queued 0-1
PARAM_VALUE 1 sk->sk_user_data->work.timer.is_soft 0-1
PARAM_VALUE 1 *sk->sk_backlog.head->dev->name 0-255
PARAM_VALUE 1 *sk->sk_user_data->dev->pcpu_refcnt s32min-s32max
PARAM_VALUE 1 *sk->sk_user_data->door_bell.wait.lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 *sk->sk_user_data->private->o_auth.authorizer->session_key.key (-4611686018427387904)-4611686018427387903
PARAM_VALUE 1 *sk->sk_user_data->private->s_auth.authorizer->session_key.key (-4611686018427387904)-4611686018427387903
BUF_SIZE 3 pipe s32min-(-1),1-s32max
BUF_SIZE 3 pipe s32min-(-1),1-s32max
CAPPED_DATA 1 sk 1
CAPPED_DATA 4 tlen 1
DATA_SOURCE 3 pipe $2
DATA_SOURCE 5 flags $4
RX_PATH
TASK_NOT_RUNNING
USER_DATA 4 tlen 2-2147479552[c]
USER_DATA 5 flags 0-16[c]
NO_OVERFLOW_SIMPLE 1 sk->sk_prot_creator->twsk_prot->twsk_slab->sheaf_capacity
NO_OVERFLOW_SIMPLE 1 sk->sk_receive_queue.prev->data_len
NO_OVERFLOW_SIMPLE 1 sk->sk_receive_queue.prev->next->data_len
NO_OVERFLOW_SIMPLE 1 sk->sk_write_queue.next->data_len
NO_OVERFLOW_SIMPLE 1 sk->sk_write_queue.next->prev->data_len
NO_OVERFLOW_SIMPLE 3 pipe->max_usage
NO_OVERFLOW_SIMPLE 3 pipe->nr_accounted
NO_OVERFLOW_SIMPLE 3 pipe->ring_size
UNITS 1 sk unit_byte
UNITS 2 offset unit_byte
UNITS 4 tlen unit_byte
HALF_LOCKED2 sk