Documented in 1 files:
Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 34 files:
- drivers/infiniband/core/roce_gid_mgmt.c
- drivers/infiniband/hw/hns/hns_roce_bond.c, line 30
- drivers/infiniband/hw/mlx4/main.c
- drivers/infiniband/hw/mlx5/main.c, line 616
- drivers/infiniband/ulp/ipoib/ipoib_main.c, line 367
- drivers/net/ethernet/chelsio/cxgb3/cxgb3_offload.c, line 193
- drivers/net/ethernet/chelsio/cxgb4/clip_tbl.c, line 229
- drivers/net/ethernet/intel/ice/ice_eswitch_br.c, line 552
- drivers/net/ethernet/intel/ice/ice_lag.c
- drivers/net/ethernet/marvell/prestera/prestera_switchdev.c, line 1309
- drivers/net/ethernet/mellanox/mlx5/core/en/rep/bridge.c, line 439
- drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/mirred.c, line 85
- drivers/net/ethernet/mellanox/mlx5/core/en/tc_tun.c, line 66
- drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c, line 3779
- drivers/net/ethernet/microsoft/mana/mana_en.c, line 4318
- drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c, line 3305
- drivers/s390/net/qeth_l2_main.c
- include/linux/netdevice.h, line 3385
- include/net/gro.h
- include/net/l3mdev.h
- net/8021q/vlan_core.c, line 92
- net/batman-adv/multicast.c, line 90
- net/bridge/netfilter/ebt_dnat.c, line 42
- net/bridge/netfilter/ebt_redirect.c, line 30
- net/bridge/netfilter/nft_meta_bridge.c, line 19
- net/core/dev.c, line 8735
- net/core/filter.c, line 4484
- net/core/neighbour.c, line 2765
- net/core/rtnetlink.c
- net/ipv6/ndisc.c, line 889
- net/l3mdev/l3mdev.c
- net/netfilter/nfnetlink_log.c, line 463
- net/netfilter/nfnetlink_queue.c, line 685
- net/switchdev/switchdev.c, line 673
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 |