Defined in 1 files as a function:

Referenced in 35 files:

Smatch caller information:

net/ipv6/datagram.c ip6_datagram_flow_key_init() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
MEM_ZERO 0 addr
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

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

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
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_input.c ip6_protocol_deliver_rcu() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &net->ipv4.mfc_mutex
HALF_LOCKED2 &net->ipv6.mfc_mutex
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/ipv6/ip6_input.c ip6_rcv_core() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv6/ip6_input.c ip6_rcv_core() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv6/ip6_input.c ip6_rcv_core() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv6/ip6_input.c ip6_rcv_core() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

drivers/net/vxlan/vxlan_vnifilter.c vxlan_addr_multicast() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex

net/ipv6/ip6_tunnel.c ip6_tnl_rcv_ctl() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv6/ip6_tunnel.c ip6_tnl_xmit_ctl() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv6/ndisc_snoop.c ndisc_check_nd_msg() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max

net/ipv6/ndisc_snoop.c ndisc_check_nd_msg() -> ipv6_addr_is_multicast()

Type Parameter Key Value

net/bridge/br_mdb.c is_valid_mdb_source() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 7751950221337141248
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex

net/ipv6/ip6_gre.c __ip6gre_bucket() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

net/ipv6/ip6_gre.c ip6gre_tunnel_lookup() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $2
RX_PATH
TASK_NOT_RUNNING

net/ipv6/udp.c ip6_sk_dst_hoplimit() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max

net/ipv6/udp.c udpv6_rcv() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING

drivers/net/amt.c amt_dev_xmit() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

drivers/net/amt.c amt_membership_query_handler() -> ipv6_addr_is_multicast()

Type Parameter Key Value
HALF_LOCKED2 &pool->lock

drivers/net/amt.c amt_multicast_data_handler() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

drivers/net/vxlan/vxlan_multicast.c vxlan_addr_multicast() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

net/ipv6/ping.c ip6_sk_dst_hoplimit() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 547411931194654760
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk

net/ipv6/ping.c ping_v6_sendmsg() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex

net/ipv6/ping.c ping_v6_sendmsg() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 547411931194654760
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex

drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c vxlan_addr_multicast() -> ipv6_addr_is_multicast()

Type Parameter Key Value

net/bluetooth/6lowpan.c setup_header() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 813316494012641280
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &netdev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/tipc/udp_media.c tipc_udp_is_mcast_addr() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

net/tipc/udp_media.c tipc_udp_rcast_disc() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/l2tp/l2tp_ip6.c ip6_sk_dst_hoplimit() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 8491236259787087912
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk

net/l2tp/l2tp_ip6.c l2tp_ip6_sendmsg() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 8491236259787087912
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex

net/ipv6/ip6mr.c ip6mr_mfc_add() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 1227449353893048356
RX_PATH
TASK_NOT_RUNNING
LOCK2 &net->ipv6.mfc_mutex
TYPE_LOCK (struct netns_ipv6)->mfc_mutex

net/ipv6/ip6mr.c pim6_rcv() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/ipv6/addrconf.c inet6_addr_del() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $3
RX_PATH
TASK_NOT_RUNNING
USER_PTR 0 addr
LOCK2 &net->rtnl_mutex
LOCK2 global &rtnl_mutex
TYPE_LOCK (struct net)->rtnl_mutex

net/ipv6/anycast.c ipv6_sock_ac_join() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 6744988681408958464
DATA_SOURCE 0 addr $2
NS_CAPABLE 0 12
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 sk

net/netfilter/xt_cluster.c xt_cluster_is_multicast_addr() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &table->lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/ipv6/mcast.c __ipv6_sock_mc_join() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr (-1),16
BUF_SIZE 0 addr (-1),16
DATA_SOURCE 0 addr $2
RX_PATH
TASK_NOT_RUNNING
USER_PTR 0 addr
HALF_LOCKED2 sk

net/ipv6/mcast.c ip6_mc_msfget() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr 16
RX_PATH
HALF_LOCKED2 sk

net/ipv6/mcast.c ip6_mc_msfilter() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 sk

net/ipv6/mcast.c ip6_mc_source() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 1496053755919720464
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 sk

net/ipv6/mcast.c ipv6_sock_mc_drop() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr (-1),16
BUF_SIZE 0 addr (-1),16
DATA_SOURCE 0 addr $2
RX_PATH
TASK_NOT_RUNNING
USER_PTR 0 addr
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 sk

drivers/net/vxlan/vxlan_mdb.c vxlan_addr_is_multicast() -> ipv6_addr_is_multicast()

Type Parameter Key Value
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex

drivers/net/vxlan/vxlan_mdb.c vxlan_mdb_is_valid_source() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 7322155495636848640
RX_PATH
TASK_NOT_RUNNING
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 &hwsim_phys_lock
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex

net/ipv6/route.c ip6_confirm_neigh() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 1-u64max
BUF_SIZE 0 addr (-1)-0,4,16
BUF_SIZE 0 addr (-1)-0,4,16
DATA_SOURCE 0 addr $1 [m]
RX_PATH
TASK_NOT_RUNNING

net/ipv6/route.c rt6_do_redirect() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 &sk->sk_lock.slock

net/ipv6/route.c rt6_fill_node() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max

net/ipv6/raw.c ip6_sk_dst_hoplimit() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 147540059252310056
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk

net/ipv6/raw.c raw_v6_match() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
DATA_SOURCE 0 addr $3
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv6/raw.c rawv6_sendmsg() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 147540059252310056
MEM_ZERO 0 addr
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vq->mutex

net/ipv6/ip6_output.c ip6_finish_output2() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &net->ipv4.mfc_mutex
HALF_LOCKED2 &net->ipv6.mfc_mutex
HALF_LOCKED2 &sk->sk_callback_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 rcu_read
HALF_LOCKED2 sk

net/ipv6/exthdrs.c ip6_tlvopt_unknown() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 rcu_read

net/ipv6/exthdrs.c ipv6_rpl_srh_rcv() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

net/ipv6/exthdrs.c ipv6_rthdr_rcv() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/ipv6/exthdrs.c ipv6_rthdr_rcv() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-u64max
RX_PATH
TASK_NOT_RUNNING

drivers/net/vxlan/vxlan_core.c neigh_reduce() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &dev->tx_global_lock
HALF_LOCKED2 &txq->_xmit_lock
HALF_LOCKED2 bh
HALF_LOCKED2 flags

drivers/net/vxlan/vxlan_core.c vxlan_addr_multicast() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

drivers/net/bonding/bond_options.c bond_is_ip6_target_ok() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
BUF_SIZE 0 addr 16
DATA_SOURCE 0 addr $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 global &rtnl_mutex

net/bridge/br_multicast.c br_multicast_new_group_src() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &brmctx->br->multicast_lock
HALF_LOCKED2 &cfg->br->multicast_lock
HALF_LOCKED2 bh
TYPE_LOCK (struct net_bridge)->multicast_lock

net/ipv6/ndisc.c ndisc_constructor() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &rtnl_mutex

net/ipv6/ndisc.c ndisc_is_multicast() -> ipv6_addr_is_multicast()

Type Parameter Key Value
DATA_SOURCE 0 addr $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &n->lock
LOCK2 &tbl->lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct neigh_table)->lock
TYPE_LOCK (struct neighbour)->lock

net/ipv6/ndisc.c ndisc_recv_na() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING

net/ipv6/ndisc.c ndisc_recv_na() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING

net/ipv6/ndisc.c ndisc_recv_ns() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tbl->proxy_queue.lock
HALF_LOCKED2 rcu_read

net/ipv6/ndisc.c ndisc_recv_ns() -> ipv6_addr_is_multicast()

Type Parameter Key Value
BUF_SIZE 0 addr 16
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tbl->proxy_queue.lock
HALF_LOCKED2 rcu_read

drivers/net/ethernet/mellanox/mlxsw/spectrum_nve_vxlan.c vxlan_addr_multicast() -> ipv6_addr_is_multicast()

Type Parameter Key Value

net/ipv6/seg6_iptunnel.c seg6_build_state() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex

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

Type Parameter Key Value
PARAM_VALUE 0 addr 196650708650180648
MEM_ZERO 0 addr
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &x->lock

net/ipv6/icmp.c icmpv6_echo_reply() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING

net/ipv6/icmp.c icmpv6_echo_reply() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 312139106390683688
MEM_ZERO 0 addr
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh

net/ipv6/icmp.c ip6_sk_dst_hoplimit() -> ipv6_addr_is_multicast()

Type Parameter Key Value
PARAM_VALUE 0 addr 196650708650180648,312139106390683688
MEM_ZERO 0 addr
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/microchip/lan966x/lan966x_main.c lan966x_hw_offload() -> ipv6_addr_is_multicast()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING