Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 16 files:

Smatch caller information:

drivers/scsi/cxgbi/libcxgbi.c cxgbi_check_route6() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net 1824583183996030976
PARAM_VALUE 2 daddr 4096-ptr_max
PARAM_VALUE 3 prefs 0
PARAM_VALUE 4 saddr 3614584720441167872
RX_PATH
TASK_NOT_RUNNING
UNITS 1 dst_dev unit_byte
LOCK2 global &rx_queue_mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 rcu_read

net/ipv6/ip6_tunnel.c ip6_tnl_xmit() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net->ipv6.fib6_local_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.fib6_main_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.ip6_null_entry->dst.dst_trace_seq.counter s32min-s32max
PARAM_VALUE 2 daddr 2089257075620311080,2167709563242233896,2411074308527366184,5299757682515468328,8065245302774161448
PARAM_VALUE 3 prefs 0
PARAM_VALUE 4 saddr 2089257075620311096,2167709563242233912,2411074308527366200,5299757682515468344,8065245302774161464
RX_PATH
TASK_NOT_RUNNING
UNITS 0 net unit_byte
UNITS 1 dst_dev unit_byte
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/amt.c amt_build_mld_gq() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 3 prefs 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/core/filter.c bpf_ipv6_fib_lookup() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->user_ns 4096-ptr_max
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 1 dst_dev->ip6_ptr->cnf.forwarding s32min-(-1),1-s32max
PARAM_VALUE 2 daddr 7057109324066013224
PARAM_VALUE 3 prefs 0
PARAM_VALUE 4 saddr 4096-ptr_max
BUF_SIZE 4 saddr 16
DATA_SOURCE 0 net $0
UNITS 0 net unit_byte
UNITS 1 dst_dev unit_byte

net/netfilter/ipvs/ip_vs_xmit.c __ip_vs_route_output_v6() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net->ipv6.fib6_local_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.fib6_main_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.ip6_null_entry->dst.dst_trace_seq.counter s32min-s32max
PARAM_VALUE 2 daddr 7352076909102714920
PARAM_VALUE 3 prefs 0
PARAM_VALUE 4 saddr 7352076909102714936
DATA_SOURCE 0 net $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 dst_dev unit_byte
HALF_LOCKED2 &dest->dst_lock
HALF_LOCKED2 bh

net/ipv6/fib6_rules.c fib6_rule_saddr() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 2 daddr 4096-ptr_max
PARAM_VALUE 3 prefs 0-7
PARAM_VALUE 4 saddr 3064755596557750272
DATA_SOURCE 0 net $0
DATA_SOURCE 1 dst_dev $4
RX_PATH
TASK_NOT_RUNNING
UNITS 1 dst_dev unit_byte
LOCK2 rcu_read

drivers/net/bonding/bond_main.c bond_ns_send_all() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 2 daddr 4096-ptr_max
PARAM_VALUE 3 prefs 0
PARAM_VALUE 4 saddr 474578740159905792
CAPPED_DATA 1 dst_dev->nd_net.net 1
UNITS 1 dst_dev unit_byte
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 rcu_read

net/ipv6/route.c ip6_route_get_saddr() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 0 net->ipv6.fib6_local_tbl->tb6_root.fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.fib6_local_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.fib6_main_tbl->tb6_root.fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.fib6_main_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.ip6_null_entry->dst.dst_trace_seq.counter s32min-s32max
PARAM_VALUE 2 daddr 6735678175064977448
PARAM_VALUE 3 prefs 0
PARAM_VALUE 4 saddr 7974151300886167552
DATA_SOURCE 0 net $0
DATA_SOURCE 2 daddr $2
DATA_SOURCE 3 prefs $3
DATA_SOURCE 4 saddr $5
RX_PATH
TASK_NOT_RUNNING
UNITS 0 net unit_byte
LOCK2 rcu_read
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex

net/ipv6/ip6_output.c ip6_route_get_saddr() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net->ipv6.fib6_local_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.fib6_main_tbl->tb6_root.subtree->fn_flags 4-u16max
PARAM_VALUE 0 net->ipv6.ip6_null_entry->dst.dst_trace_seq.counter s32min-s32max
PARAM_VALUE 0 net->loopback_dev->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
PARAM_VALUE 2 daddr 4096-ptr_max
PARAM_VALUE 3 prefs 0-255
PARAM_VALUE 4 saddr 4096-ptr_max
BUF_SIZE 0 net (-1),10496
BUF_SIZE 0 net (-1),10496
DATA_SOURCE 0 net $0
DATA_SOURCE 2 daddr $2
DATA_SOURCE 3 prefs $3
DATA_SOURCE 4 saddr $5
FUZZY_MAX 3 prefs 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 net unit_byte
LOCK2 rcu_read
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 bh

net/ipv6/xfrm6_policy.c xfrm6_get_saddr() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 3 prefs 0
CAPPED_DATA 1 dst_dev->nd_net.net 1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 dst_dev unit_byte
LOCK2 rcu_read
HALF_LOCKED2 bh

net/bridge/br_multicast.c br_ip6_multicast_alloc_query() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 1 dst_dev->dev_addr 4096-ptr_max
PARAM_VALUE 1 dst_dev->ethtool_ops->begin 0,5,1835931156019712000,3096438129622650880,3900617307435175936,5716752743725981696,7946597811871383552,8525681326485266432
PARAM_VALUE 1 dst_dev->ethtool_ops->complete 0,7,3066456658599772160,3725154072746565632,6586841582423441408,7106287630129446912
PARAM_VALUE 1 dst_dev->ethtool_ops->get_mm 0,85,871246504159531008,1782640983197487104,6800978227696902144,8546551779893547008
PARAM_VALUE 1 dst_dev->ethtool_ops->set_mm 0,6,1901320415777849344,3866000723147972608,5541409492295524352,6099901598508961792
PARAM_VALUE 1 dst_dev->ethtool_ops->supported_coalesce_params 0-3,17,19,34-35,48,51,59,63,204,236,273,511,513,529,547,561,563,595,597,1553,1587,1681,132625,135697,657041,677393,2029107,2097665,2300433,2300595,3653155,12583935,12584499,13239859,117440512,536872499,s32max
PARAM_VALUE 1 dst_dev->mtu 86-u32max
PARAM_VALUE 1 dst_dev->rtnl_link_ops->priv_size 0,8,32,40,48,56,88,112,120,144,160,224,240,256,296,616,624,728,744,1056,1128,1336,1616,2176,2240,2272,2560,3296,3544,9688-u64max
PARAM_VALUE 3 prefs 0
CAPPED_DATA 1 dst_dev->nd_net.net 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &br->multicast_lock
HALF_LOCKED2 &brmctx->br->multicast_lock
TYPE_LOCK (struct net_bridge)->multicast_lock

net/ipv6/ioam6_iptunnel.c ioam6_do_encap() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net->ipv4.fqdir->f->frag_expire 0,663510801442193408,1753052602134376448,4007388366431105024,8876081723503042560
PARAM_VALUE 0 net->ipv4.fqdir->f->qsize 0,304,320
PARAM_VALUE 3 prefs 2
BUF_SIZE 0 net (-1),1-s32max
BUF_SIZE 0 net (-1),1-s32max
DATA_SOURCE 0 net $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 &sk->sk_callback_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk
HALF_LOCKED2 0 &net->ipv4.mfc_mutex
HALF_LOCKED2 0 &net->ipv6.mfc_mutex

net/netfilter/nf_nat_masquerade.c nf_nat_masquerade_ipv6() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 3 prefs 0
PARAM_VALUE 4 saddr 5378992074374205440
DATA_SOURCE 1 dst_dev $2
RX_PATH
TASK_NOT_RUNNING

net/ipv6/ndisc.c ndisc_send_na() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 3 prefs 0-255
PARAM_VALUE 4 saddr 3144187741240242176
BUF_SIZE 2 daddr (-1),16
BUF_SIZE 2 daddr (-1),16
CAPPED_DATA 1 dst_dev 1
CAPPED_DATA 1 dst_dev->nd_net.net 1
DATA_SOURCE 1 dst_dev $0
DATA_SOURCE 2 daddr $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 dst_dev->group
NO_OVERFLOW_SIMPLE 1 dst_dev->num_tc
NO_OVERFLOW_SIMPLE 1 dst_dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 1 dst_dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 1 dst_dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 1 dst_dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 1 dst_dev->tx_queue_len
UNITS 1 dst_dev unit_byte
HALF_LOCKED2 &idev->lock
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 bh
HALF_LOCKED2 global &rtnl_mutex

net/ipv6/seg6_iptunnel.c set_tun_src() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 3 prefs 2
CAPPED_DATA 1 dst_dev->nd_net.net 1
DATA_SOURCE 0 net $0
DATA_SOURCE 1 dst_dev $1
DATA_SOURCE 2 daddr $2
DATA_SOURCE 4 saddr $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
LOCK2 rcu_read

net/ipv6/icmp.c icmp6_send() -> ipv6_dev_get_saddr()

Type Parameter Key Value
PARAM_VALUE 0 net 4096-ptr_max
PARAM_VALUE 1 dst_dev 4096-ptr_max
PARAM_VALUE 1 dst_dev->refcnt_tracker.list.next 4096-ptr_max
PARAM_VALUE 1 dst_dev->refcnt_tracker.list.next->next 4096-ptr_max
PARAM_VALUE 1 dst_dev->refcnt_tracker.list.next->prev 4096-ptr_max
PARAM_VALUE 1 dst_dev->rtnl_link_ops->priv_size 0,8,32,48,56,88,112,120,144,160,224,240,256,296,616,624,728,736
PARAM_VALUE 2 daddr 196650708650180648
PARAM_VALUE 3 prefs 0-255
PARAM_VALUE 4 saddr 196650708650180664
CAPPED_DATA 1 dst_dev->ifindex 1
DATA_SOURCE 1 dst_dev r dev_get_by_index
MEM_ZERO 2 daddr
MEM_ZERO 4 saddr
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 net unit_byte
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &x->lock