Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

net/ethtool/ioctl.c ethtool_set_channels() -> netdev_queue_busy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 idx 0
PARAM_VALUE 2 type 0
PARAM_VALUE 3 extack 0
CAPPED_DATA 0 dev->nd_net.net 1
DATA_SOURCE 0 dev $0
HALF_LOCKED2 global &rtnl_mutex

net/ethtool/ioctl.c ethtool_set_channels() -> netdev_queue_busy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 idx 0
PARAM_VALUE 2 type 1
PARAM_VALUE 3 extack 0
CAPPED_DATA 0 dev->nd_net.net 1
DATA_SOURCE 0 dev $0
HALF_LOCKED2 global &rtnl_mutex

net/core/netdev-genl.c netdev_nl_queue_create_doit() -> netdev_queue_busy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->real_num_rx_queues 1-u32max
PARAM_VALUE 1 idx 0-4294967294
PARAM_VALUE 2 type 0
PARAM_VALUE 3 extack 4971238048455385088
CAPPED_DATA 0 dev->nd_net.net 1
CAPPED_DATA 1 idx 1
DATA_SOURCE 1 idx r nla_get_u32
PARAM_COMPARE 0 dev == $0
PARAM_COMPARE 0 dev->real_num_rx_queues > $1
PARAM_COMPARE 1 idx < $0->real_num_rx_queues
RX_PATH
TASK_NOT_RUNNING
UNITS 1 idx unit_array_size
LOCK2 &dev->lock
LOCK2 0 &dev->lock
HALF_LOCKED2 &devlink->lock
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 &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct net_device)->lock

net/ethtool/channels.c ethnl_set_channels() -> netdev_queue_busy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 idx 0
PARAM_VALUE 2 type 0
PARAM_VALUE 3 extack 4971238048455385088
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 extack->miss_nest->nla_type 0-u16max
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
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 &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read

net/ethtool/channels.c ethnl_set_channels() -> netdev_queue_busy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 1 idx 0
PARAM_VALUE 2 type 1
PARAM_VALUE 3 extack 4971238048455385088
RX_PATH
TASK_NOT_RUNNING
USER_DATA 3 extack->miss_nest->nla_type 0-u16max
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
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 &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read