Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 34 files:

Smatch caller information:

drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c mlx5_handle_changeinfodata_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 rcu_read

drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c mlx5_handle_changeupper_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
UNITS 0 dev unit_byte
LOCK2 rcu_read

net/netfilter/nfnetlink_queue.c nfqnl_put_master_ifindex() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $2
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte

drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/mirred.c get_fdb_out_dev() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
BUF_SIZE 0 dev s32min,(-1),4,24,64,168-s32max
BUF_SIZE 0 dev s32min,(-1),4,24,64,168-s32max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &block->cb_lock
HALF_LOCKED2 &flowtable->flow_block_lock
HALF_LOCKED2 &priv->mdev->priv.eswitch->mode_lock

net/ipv6/ip6_input.c l3mdev_l3_rcv() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/bridge/netfilter/ebt_redirect.c ebt_redirect_tg() -> netdev_master_upper_dev_get_rcu()

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

net/ipv6/ip6_offload.c inet6_get_iif_sdif() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BIT_INFO 0 dev->features 0x200000000000000,0xffffffffffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read

net/ipv6/udp.c inet6_get_iif_sdif() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read

drivers/net/ethernet/microsoft/mana/mana_en.c mana_get_primary_netdev() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv4/tcp_offload.c inet_get_iif_sdif() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BIT_INFO 0 dev->features 0x200000000000000,0xffffffffffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read

net/core/filter.c xdp_master_redirect() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 &cq->lock
HALF_LOCKED2 &queue->rx_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/8021q/vlan_core.c __vlan_find_dev_deep_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 &cq->cq_lock
HALF_LOCKED2 &mlxsw_sp->router->lock
HALF_LOCKED2 flags
HALF_LOCKED2 rcu_read

net/core/neighbour.c neigh_master_filtered() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
LOCK2 rcu_read

net/ipv4/fib_semantics.c l3mdev_master_dev_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read

drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c mlxsw_sp_switchdev_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
DATA_SOURCE 0 dev r switchdev_notifier_info_to_dev

net/ipv4/udp_offload.c inet_get_iif_sdif() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev s32min-(-1),1-s32max
CAPPED_DATA 0 dev->nd_net.net 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read

drivers/net/ethernet/netronome/nfp/flower/lag_conf.c nfp_fl_lag_changeupper_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 rcu_read

drivers/net/ethernet/netronome/nfp/flower/lag_conf.c nfp_fl_lag_do_work() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 &lag->lock
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct nfp_fl_lag)->lock

drivers/infiniband/core/roce_gid_mgmt.c del_netdev_default_ips_join() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 0,4096-ptr_max
CAPPED_DATA 0 dev 1
DATA_SOURCE 0 dev $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &devices_rwsem

drivers/infiniband/core/roce_gid_mgmt.c is_eth_port_inactive_slave_filter() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &devices_rwsem

drivers/infiniband/ulp/ipoib/ipoib_main.c ipoib_get_master_net_dev() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &dev->client_data_rwsem
HALF_LOCKED2 &priv->dev->lock

drivers/infiniband/hw/mlx4/main.c eth_link_query_port() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &iboe->lock
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &ibdev->client_data_rwsem
HALF_LOCKED2 &ibdev->unregistration_lock
TYPE_LOCK (struct mlx4_ib_iboe)->lock

drivers/infiniband/hw/mlx4/main.c mlx4_ib_get_netdev() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev->dev.parent 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &device->client_data_rwsem
HALF_LOCKED2 &device->unregistration_lock
HALF_LOCKED2 &ibdev->client_data_rwsem
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &table->lock
HALF_LOCKED2 global &clients_rwsem
HALF_LOCKED2 global &devices_rwsem
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &smbdirect_globals.devices.lock
HALF_LOCKED2 global &smc_ib_devices.mutex

net/ipv6/udp_offload.c inet6_get_iif_sdif() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev s32min-(-1),1-s32max
BUF_SIZE 0 dev s32min-(-1),1-s32max
CAPPED_DATA 0 dev->nd_net.net 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read

net/ipv6/addrconf.c l3mdev_master_dev_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
LOCK2 rcu_read

net/l3mdev/l3mdev.c l3mdev_fib_table_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 &net->rtnl_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 rcu_read

net/l3mdev/l3mdev.c l3mdev_link_scope_lookup() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev->ifindex 1
DATA_SOURCE 0 dev r dev_get_by_index_rcu
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &ipvs->service_mutex
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 bh
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 sk

net/l3mdev/l3mdev.c l3mdev_master_ifindex_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/l3mdev/l3mdev.c l3mdev_master_upper_ifindex_by_index_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv4/udp.c inet_get_iif_sdif() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
HALF_LOCKED2 rcu_read

net/core/lwt_bpf.c l3mdev_master_dev_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
LOCK2 bh
LOCK2 rcu_read
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 sk

net/bridge/netfilter/nft_meta_bridge.c nft_meta_get_bridge() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
UNITS 0 dev unit_byte

drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c get_route_and_out_devs() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
BUF_SIZE 0 dev (-1),2064
BUF_SIZE 0 dev (-1),2064
DATA_SOURCE 0 dev r mlx5_eswitch_uplink_get_proto_dev
RX_PATH
TASK_NOT_RUNNING
LOCK2 &esw->offloads.encap_tbl_lock
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &priv->mdev->priv.eswitch->mode_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct mlx5_esw_offload)->encap_tbl_lock

drivers/infiniband/hw/mlx5/main.c mlx5_query_port_roce() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r ib_device_get_netdev
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &device->client_data_rwsem
HALF_LOCKED2 &device->unregistration_lock

net/batman-adv/multicast.c batadv_mcast_get_bridge() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock

drivers/net/ethernet/intel/ice/ice_eswitch_br.c ice_eswitch_br_switchdev_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
DATA_SOURCE 0 dev r switchdev_notifier_info_to_dev

drivers/net/ethernet/intel/ice/ice_lag.c ice_lag_build_netdev_list() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &pf->lag_mutex
LOCK2 rcu_read
TYPE_LOCK (struct ice_pf)->lag_mutex

drivers/net/ethernet/intel/ice/ice_lag.c ice_lag_chk_comp() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
DATA_SOURCE 0 dev r netdev_notifier_info_to_dev
LOCK2 &pf->lag_mutex
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ice_pf)->lag_mutex

drivers/net/ethernet/intel/ice/ice_lag.c ice_lag_event_handler() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 rcu_read

drivers/net/ethernet/intel/ice/ice_lag.c ice_lag_is_switchdev_running() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

drivers/net/ethernet/intel/ice/ice_lag.c ice_lag_monitor_info() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
DATA_SOURCE 0 dev r netdev_notifier_info_to_dev
LOCK2 &pf->lag_mutex
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ice_pf)->lag_mutex

net/ipv4/ip_input.c l3mdev_l3_rcv() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

net/netfilter/nfnetlink_log.c nflog_put_master_ifindex() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
LOCK2 &inst->lock
LOCK2 bh
LOCK2 rcu_read
TYPE_LOCK (struct nfulnl_instance)->lock

net/ipv6/output_core.c l3mdev_l3_out() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r skb_dst_dev_rcu
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &sk->sk_callback_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk

drivers/net/ethernet/mellanox/mlx5/core/en/rep/bridge.c mlx5_esw_bridge_switchdev_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
DATA_SOURCE 0 dev r switchdev_notifier_info_to_dev

net/ipv6/route.c l3mdev_master_dev_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
LOCK2 rcu_read

net/ipv6/raw.c l3mdev_l3_out() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r skb_dst_dev_rcu
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &vq->mutex
HALF_LOCKED2 sk

net/ipv6/ip6_output.c l3mdev_l3_out() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r skb_dst_dev_rcu
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &net->xfrm.xfrm_state_lock
HALF_LOCKED2 bh

net/ipv6/ip6_output.c l3mdev_master_dev_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 bh

drivers/net/ethernet/marvell/prestera/prestera_switchdev.c prestera_switchdev_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r switchdev_notifier_info_to_dev

drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c netxen_config_master() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev 1
DATA_SOURCE 0 dev $0
LOCK2 rcu_read

drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c netxen_inetaddr_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 rcu_read

drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c netxen_netdev_event() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 rcu_read

drivers/net/ethernet/chelsio/cxgb3/cxgb3_offload.c get_iff_from_mac() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &cxgb3_db_lock

drivers/net/ethernet/chelsio/cxgb3/cxgb3_offload.c get_iff_from_mac() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &cxgb3_db_lock

net/switchdev/switchdev.c __switchdev_handle_fdb_event_to_device() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0

net/bridge/netfilter/ebt_dnat.c ebt_dnat_tg() -> netdev_master_upper_dev_get_rcu()

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

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

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev->nd_net.net 1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->num_tc
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.rx_bytes
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
HALF_LOCKED2 &tbl->proxy_queue.lock
HALF_LOCKED2 rcu_read

drivers/infiniband/hw/hns/hns_roce_bond.c check_slave_support() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 &bond_grp->bond_mutex
LOCK2 rcu_read
TYPE_LOCK (struct hns_roce_bond_group)->bond_mutex

drivers/infiniband/hw/hns/hns_roce_bond.c check_unlinking_bond_support() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 &bond_grp->bond_mutex
LOCK2 rcu_read
TYPE_LOCK (struct hns_roce_bond_group)->bond_mutex

drivers/infiniband/hw/hns/hns_roce_bond.c get_upper_dev_from_ndev() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
LOCK2 rcu_read

drivers/infiniband/hw/hns/hns_roce_bond.c hns_roce_bond_info_update_nolock() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
LOCK2 &bond_grp->bond_mutex
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct hns_roce_bond_group)->bond_mutex

net/core/rtnetlink.c link_master_filtered() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 1-1025,1027-1029,1031-u64max
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 global &rtnl_mutex

net/core/rtnetlink.c put_master_ifindex() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev->ethtool_ops (-1),656
BUF_SIZE 0 dev->header_ops (-1)-0,48
BUF_SIZE 0 dev->nd_net.net (-1),10304,10432,10496
BUF_SIZE 0 dev->rtnl_link_ops (-1),288
DATA_SOURCE 0 dev $1
STR_LEN 0 dev (-1)
STR_LEN 0 dev (-1)
STR_LEN 0 dev->nd_net.net (-1)
NOSPEC 0 dev->flags
NOSPEC 0 dev->ifindex
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev->flags 0-527873[c]
USER_DATA 0 dev->ifindex s32min-s32max
USER_DATA 0 dev->mtu 0-s32max[c]
USER_DATA 0 dev->num_tc 2-16[c]
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->mem_start
NO_OVERFLOW_SIMPLE 0 dev->name
NO_OVERFLOW_SIMPLE 0 dev->num_napi_configs
NO_OVERFLOW_SIMPLE 0 dev->num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
USER_PTR 0 dev->broadcast
USER_PTR 0 dev->name
LOCK2 rcu_read
HALF_LOCKED2 0 &dev->ethtool->rss_lock
HALF_LOCKED2 0 &dev->lock

net/core/rtnetlink.c rtnl_have_link_slave_info() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev->ethtool_ops (-1),656
BUF_SIZE 0 dev->header_ops (-1)-0,48
BUF_SIZE 0 dev->nd_net.net (-1),10304,10432,10496
BUF_SIZE 0 dev->rtnl_link_ops (-1),288
DATA_SOURCE 0 dev $0
STR_LEN 0 dev (-1)
STR_LEN 0 dev (-1)
STR_LEN 0 dev->nd_net.net (-1)
NOSPEC 0 dev->flags
NOSPEC 0 dev->ifindex
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev->flags 0-527873[c]
USER_DATA 0 dev->ifindex s32min-s32max
USER_DATA 0 dev->mtu 0-s32max[c]
USER_DATA 0 dev->num_tc 2-16[c]
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->mem_start
NO_OVERFLOW_SIMPLE 0 dev->num_napi_configs
NO_OVERFLOW_SIMPLE 0 dev->num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
USER_PTR 0 dev->broadcast
USER_PTR 0 dev->name
LOCK2 rcu_read
HALF_LOCKED2 &dev->ethtool->rss_lock
HALF_LOCKED2 &dev->lock

net/core/rtnetlink.c rtnl_link_get_slave_info_data_size() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
BUF_SIZE 0 dev->ethtool_ops (-1),656
BUF_SIZE 0 dev->header_ops (-1)-0,48
BUF_SIZE 0 dev->name_node (-1),64
BUF_SIZE 0 dev->name_node->name (-1),16
BUF_SIZE 0 dev->nd_net.net (-1),10304,10432
BUF_SIZE 0 dev->rtnl_link_ops (-1),288
DATA_SOURCE 0 dev $0
STR_LEN 0 dev->nd_net.net (-1)
NOSPEC 0 dev->ifindex
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 dev->flags 0-527617[c]
USER_DATA 0 dev->ifindex s32min-s32max
USER_DATA 0 dev->mtu 0-s32max[c]
USER_DATA 0 dev->num_tc 2-16[c]
NO_OVERFLOW_SIMPLE 0 dev->group
NO_OVERFLOW_SIMPLE 0 dev->mem_start
NO_OVERFLOW_SIMPLE 0 dev->num_napi_configs
NO_OVERFLOW_SIMPLE 0 dev->num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->proto_down
NO_OVERFLOW_SIMPLE 0 dev->real_num_rx_queues
NO_OVERFLOW_SIMPLE 0 dev->real_num_tx_queues
NO_OVERFLOW_SIMPLE 0 dev->stats.tx_bytes
NO_OVERFLOW_SIMPLE 0 dev->tx_queue_len
UNITS 0 dev unit_byte
USER_PTR 0 dev->broadcast
USER_PTR 0 dev->name
LOCK2 rcu_read
HALF_LOCKED2 &dev->ethtool->rss_lock
HALF_LOCKED2 &dev->lock

drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c cxgb4_update_root_dev_clip() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
CAPPED_DATA 0 dev->ip6_ptr 1
DATA_SOURCE 0 dev $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

net/ipv4/route.c l3mdev_master_dev_rcu() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 0 dev unit_byte
LOCK2 rcu_read

net/ipv4/ip_output.c l3mdev_l3_out() -> netdev_master_upper_dev_get_rcu()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
DATA_SOURCE 0 dev r skb_dst_dev_rcu
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &sk->sk_callback_lock
HALF_LOCKED2 &sk->sk_lock.slock
HALF_LOCKED2 sk