Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/openvswitch/flow.c ovs_flow_key_extract() -> key_extract()

Type Parameter Key Value
PARAM_VALUE 0 skb 4096-ptr_max
PARAM_VALUE 0 skb->cb 4096-ptr_max
PARAM_VALUE 0 skb->dev 4096-ptr_max
PARAM_VALUE 0 skb->dev->ethtool_ops->get_link_ext_state 0-s64max
PARAM_VALUE 0 skb->dev->ethtool_ops->get_mm_stats 0-s64max
PARAM_VALUE 0 skb->dev->nd_net.net->ipv4.fqdir->f->frag_expire 0,663510801442193408,1753052602134376448,4007388366431105024,8876081723503042560
PARAM_VALUE 0 skb->dev->nd_net.net->ipv4.fqdir->f->qsize 0,304,320
PARAM_VALUE 0 skb->dev->ndisc_ops->fill_addr_option 4096-ptr_max
PARAM_VALUE 0 skb->dev->ndisc_ops->parse_options 4096-ptr_max
PARAM_VALUE 0 skb->dev->ndisc_ops->update 4096-ptr_max
PARAM_VALUE 0 skb->dev->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
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,3544,3552,3720,9688-u64max
PARAM_VALUE 0 skb->dev->type 1,65534
PARAM_VALUE 0 skb->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 0 skb->sk->ns_tracker->dead 0-1
PARAM_VALUE 0 skb->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 1 key 8313981782075645952
PARAM_VALUE 1 key->mac_proto 0-1
PARAM_VALUE 1 key->ovs_flow_hash 0
PARAM_VALUE 1 key->tun_proto 0,2,10
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 0 skb (-1)-s32max
CAPPED_DATA 0 skb->dev->nd_net.net 1
DATA_SOURCE 0 skb $1
DATA_SOURCE 1 key $2
FUZZY_MAX 1 key->tun_proto 0
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 skb->csum_offset 0-u16max
HOST_DATA 0 skb->data_len 0-2147483648[c]
HOST_DATA 0 skb->len 0-u32max[c]
HOST_DATA 0 skb->prev->csum_offset 0-u16max
HOST_DATA 0 skb->prev->data_len 0-u32max[c]
HOST_DATA 0 skb->prev->len 0-u32max[c]
HOST_DATA 0 skb->prev->truesize 0-u32max
HOST_DATA 0 skb->prev->tstamp 500000002-4294967299794967295[c]
HOST_DATA 0 skb->prev->users.refs.counter s32min-0,2-s32max
HOST_DATA 0 skb->tstamp 500000002-4294967299794967295[c]
HOST_DATA 0 skb->users.refs.counter s32min-0,2-s32max
HOST_DATA 0 *skb->data 0-255
NO_OVERFLOW_SIMPLE 0 skb->data_len
NO_OVERFLOW_SIMPLE 0 skb->dev->group
NO_OVERFLOW_SIMPLE 0 skb->dev->num_tc
NO_OVERFLOW_SIMPLE 0 skb->dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 skb->dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 skb->dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 skb->dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 skb->dev->tx_queue_len
NO_OVERFLOW_SIMPLE 0 skb->end
NO_OVERFLOW_SIMPLE 0 skb->extensions
NO_OVERFLOW_SIMPLE 0 skb->len
NO_OVERFLOW_SIMPLE 0 skb->prev->data_len
NO_OVERFLOW_SIMPLE 0 skb->prev->end
NO_OVERFLOW_SIMPLE 0 skb->prev->len
NO_OVERFLOW_SIMPLE 0 skb->prev->tail
NO_OVERFLOW_SIMPLE 0 skb->prev->truesize
NO_OVERFLOW_SIMPLE 0 skb->sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 0 skb->tail
NO_OVERFLOW_SIMPLE 0 skb->truesize
LOCK2 rcu_read
HALF_LOCKED2 bh

net/openvswitch/flow.c ovs_flow_key_extract_userspace() -> key_extract()

Type Parameter Key Value
PARAM_VALUE 0 skb 4096-ptr_max
PARAM_VALUE 0 skb->cb 4096-ptr_max
PARAM_VALUE 0 skb->data_len 0
PARAM_VALUE 1 key 4096-ptr_max
PARAM_VALUE 1 key->ct.mark 0
PARAM_VALUE 1 key->ct.orig_tp.dst 0
PARAM_VALUE 1 key->ct.orig_tp.src 0
PARAM_VALUE 1 key->ct_orig_proto 0
PARAM_VALUE 1 key->ct_state 0
PARAM_VALUE 1 key->ct_zone 0
PARAM_VALUE 1 key->ipv4.ct_orig.dst 0
PARAM_VALUE 1 key->ipv4.ct_orig.src 0
PARAM_VALUE 1 key->mac_proto 0-1
PARAM_VALUE 1 key->phy.in_port u16max
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 0 skb (-1)-s32max
DATA_SOURCE 0 skb $2
DATA_SOURCE 1 key $3
MEM_ZERO 1 &key->ct
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

net/openvswitch/flow.c ovs_flow_key_update() -> key_extract()

Type Parameter Key Value
PARAM_VALUE 0 skb 1-u64max
PARAM_VALUE 0 skb->dev->nd_net.net->ipv4.fqdir->f->frag_expire 0,663510801442193408,1753052602134376448,4007388366431105024,8876081723503042560
PARAM_VALUE 0 skb->dev->nd_net.net->ipv4.fqdir->f->qsize 0,304,320
PARAM_VALUE 0 skb->dev->ndisc_ops->fill_addr_option 4096-ptr_max
PARAM_VALUE 0 skb->dev->ndisc_ops->parse_options 4096-ptr_max
PARAM_VALUE 0 skb->dev->ndisc_ops->update 4096-ptr_max
PARAM_VALUE 0 skb->dev->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
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,3544,3552,3720,9688-u64max
PARAM_VALUE 1 key 4096-ptr_max
PARAM_VALUE 1 key->mac_proto 128-255
PARAM_VALUE 1 *key->nsh.context 0-4294967295
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 0 skb (-1)-s32max
BUF_SIZE 1 key (-1),472
BUF_SIZE 1 key (-1),472
CAPPED_DATA 0 skb 1
DATA_SOURCE 0 skb $0
DATA_SOURCE 1 key $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 0 skb->csum 0-4294967041[c]
HOST_DATA 0 skb->csum_offset 0-u16max
HOST_DATA 0 skb->data_len 0-u32max[c]
HOST_DATA 0 skb->inner_protocol 1-255
HOST_DATA 0 skb->len 0-u32max[c]
HOST_DATA 0 skb->prev->csum_offset 0-u16max
HOST_DATA 0 skb->prev->data_len 0-u32max[c]
HOST_DATA 0 skb->prev->len 0-u32max[c]
HOST_DATA 0 skb->prev->tstamp 500000002-4294967299794967295[c]
HOST_DATA 0 skb->protocol 1-255
HOST_DATA 0 skb->tstamp 500000002-4294967299794967295[c]
HOST_DATA 0 skb->users.refs.counter s32min-0,2-s32max
HOST_DATA 0 *skb->data 0-255
USER_DATA 1 key->eth.cvlan.tci 0-u16max
USER_DATA 1 key->eth.cvlan.tpid 0-u16max[u]
USER_DATA 1 key->eth.vlan.tci 0-u16max
USER_DATA 1 key->eth.vlan.tpid 0-u16max
USER_DATA 1 key->ip.proto 0-255
USER_DATA 1 key->ip.tos 0-255
USER_DATA 1 key->ip.ttl 0-255
USER_DATA 1 key->ipv4.addr.dst 0-u32max[c]
USER_DATA 1 key->ipv4.addr.src 0-u32max[c]
USER_DATA 1 key->tp.dst 0-u16max
USER_DATA 1 key->tp.src 0-u16max
NO_OVERFLOW_SIMPLE 0 skb->data_len
NO_OVERFLOW_SIMPLE 0 skb->dev->group
NO_OVERFLOW_SIMPLE 0 skb->dev->num_tc
NO_OVERFLOW_SIMPLE 0 skb->dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 skb->dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 skb->dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 skb->dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 skb->dev->tx_queue_len
NO_OVERFLOW_SIMPLE 0 skb->end
NO_OVERFLOW_SIMPLE 0 skb->extensions
NO_OVERFLOW_SIMPLE 0 skb->len
NO_OVERFLOW_SIMPLE 0 skb->prev->end
NO_OVERFLOW_SIMPLE 0 skb->prev->len
NO_OVERFLOW_SIMPLE 0 skb->prev->tail
NO_OVERFLOW_SIMPLE 0 skb->prev->truesize
NO_OVERFLOW_SIMPLE 0 skb->sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 0 skb->tail
NO_OVERFLOW_SIMPLE 0 skb->truesize
UNITS 0 skb unit_byte