Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

net/ipv4/route.c __ipv4_sk_update_pmtu() -> __build_flow_key()

Type Parameter Key Value
PARAM_VALUE 1 fl4 2162147593913135104
PARAM_VALUE 2 sk 4096-ptr_max
PARAM_VALUE 2 sk->sk_dst_cache 0,4096-ptr_max
PARAM_VALUE 2 sk->sk_lock.owned 0-1
PARAM_VALUE 2 sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 4 oif 0
PARAM_VALUE 5 tos 0
PARAM_VALUE 6 prot 0
PARAM_VALUE 7 mark 0
PARAM_VALUE 8 flow_flags 0
BUF_SIZE 3 iph 1-s32max
BUF_SIZE 3 iph 1-s32max
CAPPED_DATA 2 sk->__sk_common.skc_net.net 1
DATA_SOURCE 2 sk $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 iph->addrs.daddr 0-u32max[u]
USER_DATA 3 iph->addrs.saddr 0-u32max[u]
USER_DATA 3 iph->check 0-u16max[u]
USER_DATA 3 iph->daddr 0-u32max[u]
USER_DATA 3 iph->frag_off 0-u16max[u]
USER_DATA 3 iph->id 0-u16max[u]
USER_DATA 3 iph->ihl 0-15[u]
USER_DATA 3 iph->protocol 0-255[u]
USER_DATA 3 iph->saddr 0-u32max[u]
USER_DATA 3 iph->tos 0-255[u]
USER_DATA 3 iph->tot_len 0-u16max[u]
USER_DATA 3 iph->ttl 0-255[u]
USER_DATA 3 iph->version 0-15[u]
UNITS 3 iph unit_byte
USER_PTR 3 iph
LOCK2 2 &sk->sk_lock.slock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct socket_lock_t)->slock

net/ipv4/route.c build_skb_flow_key() -> __build_flow_key()

Type Parameter Key Value
PARAM_VALUE 1 fl4 2492317193869529088
PARAM_VALUE 2 sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 2 sk->ns_tracker->dead 0-1
PARAM_VALUE 2 sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 2 sk->sk_backlog.head->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 2 sk->sk_backlog.head->sk->ns_tracker->dead 0-1
PARAM_VALUE 2 sk->sk_backlog.head->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 2 sk->sk_peer_cred->process_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 2 sk->sk_peer_cred->process_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 2 sk->sk_peer_cred->request_key_auth->user->qnbytes s32min-s32max
PARAM_VALUE 2 sk->sk_peer_cred->request_key_auth->user->qnkeys s32min-s32max
PARAM_VALUE 2 sk->sk_peer_cred->session_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 2 sk->sk_peer_cred->session_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 2 sk->sk_peer_cred->thread_keyring->user->qnbytes s32min-s32max
PARAM_VALUE 2 sk->sk_peer_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 2 sk->sk_socket->sk->ns_tracker->alloc_stack_handle 0-4294967295
PARAM_VALUE 2 sk->sk_socket->sk->ns_tracker->dead 0-1
PARAM_VALUE 2 sk->sk_socket->sk->ns_tracker->free_stack_handle 0-4294967295
PARAM_VALUE 3 iph 4096-ptr_max
PARAM_VALUE 8 flow_flags 0
DATA_SOURCE 1 fl4 $0
DATA_SOURCE 2 sk $2
DATA_SOURCE 3 iph r ip_hdr
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 2 sk->sk_backlog.len
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->end
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->len
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->next->end
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->next->len
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->next->tail
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->next->truesize
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->tail
NO_OVERFLOW_SIMPLE 2 sk->sk_receive_queue.prev->truesize
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->end
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->len
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->prev->end
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->prev->len
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->prev->tail
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->prev->truesize
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->tail
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.next->truesize
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.prev->data_len
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.prev->len
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.prev->next->data_len
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.prev->next->len
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.prev->next->truesize
NO_OVERFLOW_SIMPLE 2 sk->sk_write_queue.prev->truesize
UNITS 0 net unit_byte
UNITS 4 oif unit_array_size
HALF_LOCKED2 rcu_read
HALF_LOCKED2 2 &sk->sk_lock.slock

net/ipv4/route.c ip_do_redirect() -> __build_flow_key()

Type Parameter Key Value
PARAM_VALUE 1 fl4 4338008797665587200
PARAM_VALUE 3 iph 4096-ptr_max
PARAM_VALUE 8 flow_flags 0
BUF_SIZE 3 iph 1-s32max
BUF_SIZE 3 iph 1-s32max
DATA_SOURCE 2 sk $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 iph->addrs.daddr 0-u32max[u]
USER_DATA 3 iph->addrs.saddr 0-u32max[u]
USER_DATA 3 iph->check 0-u16max[u]
USER_DATA 3 iph->daddr 0-u32max[u]
USER_DATA 3 iph->frag_off 0-u16max[u]
USER_DATA 3 iph->id 0-u16max[u]
USER_DATA 3 iph->ihl 0-15[u]
USER_DATA 3 iph->protocol 0-255[u]
USER_DATA 3 iph->saddr 0-u32max[u]
USER_DATA 3 iph->tos 0-255[u]
USER_DATA 3 iph->tot_len 0-u16max[u]
USER_DATA 3 iph->ttl 0-255[u]
USER_DATA 3 iph->version 0-15[u]
USER_DATA 5 tos 0-255[u]
USER_DATA 6 prot 0-255[u]
UNITS 0 net unit_byte
UNITS 3 iph unit_byte
UNITS 4 oif unit_array_size
USER_PTR 3 iph
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 2 &sk->sk_lock.slock

net/ipv4/route.c ipv4_redirect() -> __build_flow_key()

Type Parameter Key Value
PARAM_VALUE 1 fl4 13317736350126080
PARAM_VALUE 2 sk 0
PARAM_VALUE 3 iph 4096-ptr_max
PARAM_VALUE 7 mark 0
PARAM_VALUE 8 flow_flags 0
BUF_SIZE 3 iph 1-s32max
BUF_SIZE 3 iph 1-s32max
DATA_SOURCE 0 net $1
DATA_SOURCE 4 oif $2
DATA_SOURCE 6 prot $3
NOSPEC 6 prot
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 iph->addrs.daddr 0-u32max[u]
USER_DATA 3 iph->addrs.saddr 0-u32max[u]
USER_DATA 3 iph->check 0-u16max[u]
USER_DATA 3 iph->daddr 0-u32max[u]
USER_DATA 3 iph->frag_off 0-u16max[u]
USER_DATA 3 iph->id 0-u16max[u]
USER_DATA 3 iph->ihl 0-15[u]
USER_DATA 3 iph->protocol 0-255[u]
USER_DATA 3 iph->saddr 0-u32max[u]
USER_DATA 3 iph->tos 0-255[u]
USER_DATA 3 iph->tot_len 0-u16max[u]
USER_DATA 3 iph->ttl 0-255[u]
USER_DATA 3 iph->version 0-15[u]
USER_DATA 5 tos 0-255[u]
USER_DATA 6 prot 0-255
UNITS 0 net unit_byte
UNITS 3 iph unit_byte
UNITS 4 oif unit_array_size
USER_PTR 3 iph
HALF_LOCKED2 rcu_read

net/ipv4/route.c ipv4_sk_redirect() -> __build_flow_key()

Type Parameter Key Value
PARAM_VALUE 1 fl4 296812173255839744
PARAM_VALUE 2 sk 1-ptr_max
PARAM_VALUE 4 oif 0
PARAM_VALUE 5 tos 0
PARAM_VALUE 6 prot 0
PARAM_VALUE 7 mark 0
PARAM_VALUE 8 flow_flags 0
BUF_SIZE 3 iph 1-s32max
BUF_SIZE 3 iph 1-s32max
CAPPED_DATA 2 sk->__sk_common.skc_net.net 1
DATA_SOURCE 2 sk $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 iph->addrs.daddr 0-u32max[u]
USER_DATA 3 iph->addrs.saddr 0-u32max[u]
USER_DATA 3 iph->check 0-u16max[u]
USER_DATA 3 iph->daddr 0-u32max[u]
USER_DATA 3 iph->frag_off 0-u16max[u]
USER_DATA 3 iph->id 0-u16max[u]
USER_DATA 3 iph->ihl 0-15[u]
USER_DATA 3 iph->protocol 0-255[u]
USER_DATA 3 iph->saddr 0-u32max[u]
USER_DATA 3 iph->tos 0-255[u]
USER_DATA 3 iph->tot_len 0-u16max[u]
USER_DATA 3 iph->ttl 0-255[u]
USER_DATA 3 iph->version 0-15[u]
UNITS 0 net unit_byte
UNITS 3 iph unit_byte
USER_PTR 3 iph
HALF_LOCKED2 rcu_read

net/ipv4/route.c ipv4_sk_update_pmtu() -> __build_flow_key()

Type Parameter Key Value
PARAM_VALUE 1 fl4 2953694614799618048
PARAM_VALUE 2 sk 4096-ptr_max
PARAM_VALUE 2 sk->sk_dst_cache 4096-ptr_max
PARAM_VALUE 2 sk->sk_lock.owned 0
PARAM_VALUE 2 sk->sk_lock.slock.rlock.dep_map->name 0-255
PARAM_VALUE 4 oif 0
PARAM_VALUE 5 tos 0
PARAM_VALUE 6 prot 0
PARAM_VALUE 7 mark 0
PARAM_VALUE 8 flow_flags 0
BUF_SIZE 3 iph 1-s32max
BUF_SIZE 3 iph 1-s32max
CAPPED_DATA 2 sk->__sk_common.skc_net.net 1
DATA_SOURCE 2 sk $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 iph->addrs.daddr 0-u32max[u]
USER_DATA 3 iph->addrs.saddr 0-u32max[u]
USER_DATA 3 iph->check 0-u16max[u]
USER_DATA 3 iph->daddr 0-u32max[u]
USER_DATA 3 iph->frag_off 0-u16max[u]
USER_DATA 3 iph->id 0-u16max[u]
USER_DATA 3 iph->ihl 0-15[u]
USER_DATA 3 iph->protocol 0-255[u]
USER_DATA 3 iph->saddr 0-u32max[u]
USER_DATA 3 iph->tos 0-255[u]
USER_DATA 3 iph->tot_len 0-u16max[u]
USER_DATA 3 iph->ttl 0-255[u]
USER_DATA 3 iph->version 0-15[u]
UNITS 0 net unit_byte
UNITS 3 iph unit_byte
USER_PTR 3 iph
LOCK2 2 &sk->sk_lock.slock
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct socket_lock_t)->slock

net/ipv4/route.c ipv4_update_pmtu() -> __build_flow_key()

Type Parameter Key Value
PARAM_VALUE 1 fl4 4751902985513521152
PARAM_VALUE 2 sk 0
PARAM_VALUE 3 iph 4096-ptr_max
PARAM_VALUE 8 flow_flags 0
BUF_SIZE 3 iph 1-s32max
BUF_SIZE 3 iph 1-s32max
DATA_SOURCE 0 net $1
DATA_SOURCE 4 oif $3
DATA_SOURCE 6 prot $4
NOSPEC 6 prot
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 3 iph->addrs.daddr 0-u32max[u]
USER_DATA 3 iph->addrs.saddr 0-u32max[u]
USER_DATA 3 iph->check 0-u16max[u]
USER_DATA 3 iph->daddr 0-u32max[u]
USER_DATA 3 iph->frag_off 0-u16max[u]
USER_DATA 3 iph->id 0-u16max[u]
USER_DATA 3 iph->ihl 0-15[u]
USER_DATA 3 iph->protocol 0-255[u]
USER_DATA 3 iph->saddr 0-u32max[u]
USER_DATA 3 iph->tos 0-255[u]
USER_DATA 3 iph->tot_len 0-u16max[u]
USER_DATA 3 iph->ttl 0-255[u]
USER_DATA 3 iph->version 0-15[u]
USER_DATA 5 tos 0-255[u]
USER_DATA 6 prot 0-255
UNITS 0 net unit_byte
UNITS 3 iph unit_byte
UNITS 4 oif unit_array_size
USER_PTR 3 iph
HALF_LOCKED2 rcu_read