Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

net/ethtool/ioctl.c ethtool_set_rxfh() -> ethtool_check_rss_ctx_busy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->dev.parent 0,4096-ptr_max
PARAM_VALUE 0 dev->dev.parent->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->dev.parent->class 0,4096-ptr_max
PARAM_VALUE 0 dev->dev.parent->power.request 0-4
PARAM_VALUE 0 dev->dev.parent->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 dev->dev.parent->power.wakeirq 0,4096-ptr_max
PARAM_VALUE 0 dev->dev.parent->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 dev->dev.parent->type 0,4096-ptr_max
PARAM_VALUE 0 dev->ethtool->rss_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->ethtool->rss_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->ethtool->rss_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->ethtool->rss_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->ethtool->rss_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->ethtool->rss_lock.wait_lock.owner (-1)
PARAM_VALUE 0 dev->ethtool->rss_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 dev->ethtool_ops 4096-ptr_max
PARAM_VALUE 0 dev->ethtool_ops->begin 0,1835931156019712000,3096438129622650880,3900617307435175936,5716752743725981696,7946597811871383552,8525681326485266432
PARAM_VALUE 0 dev->ethtool_ops->create_rxfh_context 1-u64max
PARAM_VALUE 0 dev->ethtool_ops->get_rx_ring_count 1-u64max
PARAM_VALUE 0 dev->ethtool_ops->set_rxfh 1-u64max
PARAM_VALUE 0 dev->lock.dep_map->name 0-255
PARAM_VALUE 0 dev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->moving_ns 0
PARAM_VALUE 0 dev->netdev_ops 4096-ptr_max
PARAM_VALUE 0 dev->refcnt_tracker.list.next->next 4096-ptr_max
PARAM_VALUE 0 dev->refcnt_tracker.list.next->prev 4096-ptr_max
PARAM_VALUE 0 dev->reg_state 0-1
PARAM_VALUE 1 rss_context 1-u32max
CAPPED_DATA 0 dev->nd_net.net 1
CAPPED_DATA 0 &dev->ethtool->rss_lock 1
DATA_SOURCE 0 dev $0
FUZZY_MAX 0 dev->reg_state 1
HARD_MAX 0 dev->reg_state 1
USER_DATA 1 rss_context 1-4294967294
LOCK2 0 &dev->ethtool->rss_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct ethtool_netdev_state)->rss_lock

net/ethtool/rss.c ethnl_rss_delete_doit() -> ethtool_check_rss_ctx_busy()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->dev.parent 0,4096-ptr_max
PARAM_VALUE 0 dev->dev.parent->bus 0,4096-ptr_max
PARAM_VALUE 0 dev->dev.parent->type 0,4096-ptr_max
PARAM_VALUE 0 dev->ethtool->rss_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->ethtool->rss_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->ethtool->rss_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->ethtool->rss_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->ethtool->rss_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 dev->ethtool->rss_lock.wait_lock.owner (-1)
PARAM_VALUE 0 dev->ethtool->rss_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 dev->ethtool_ops 4096-ptr_max
PARAM_VALUE 0 dev->ethtool_ops->create_rxfh_context 1-u64max
PARAM_VALUE 0 dev->lock.dep_map->name 0-255
PARAM_VALUE 0 dev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 dev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->netdev_ops 4096-ptr_max
PARAM_VALUE 0 dev->priv->clk->core->dev->power.deferred_resume 0-1
PARAM_VALUE 0 dev->priv->clk->core->dev->power.idle_notification 0-1
PARAM_VALUE 0 dev->priv->clk->core->dev->power.request 0-4
PARAM_VALUE 0 dev->priv->clk->core->dev->power.request_pending 0-1
PARAM_VALUE 0 dev->priv->clk->core->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 dev->priv->clk->core->dev->power.runtime_status s32min-s32max
PARAM_VALUE 0 dev->priv->clk->core->dev->power.timer_autosuspends 0-1
PARAM_VALUE 0 dev->priv->clk->core->dev->power.usage_count.counter s32min-s32max
PARAM_VALUE 0 dev->priv->clk->core->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.deferred_resume 0-1
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.idle_notification 0-1
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.request 0-4294967295
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.request_pending 0-1
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.runtime_error s32min-s32max
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.runtime_status s32min-s32max
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.timer_autosuspends 0-1
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.usage_count.counter s32min-s32max
PARAM_VALUE 0 dev->priv->clk->core->parent->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 dev->priv->clk->core->parent->enable_count 0-4294967295
PARAM_VALUE 0 dev->priv->clk->core->parent->prepare_count 0-4294967295
PARAM_VALUE 0 dev->priv->clk->core->parent->protect_count 0-4294967295
PARAM_VALUE 0 dev->priv->clk->core->prepare_count 0-4294967295
PARAM_VALUE 0 dev->priv->clk->core->protect_count 0-4294967295
PARAM_VALUE 0 dev->priv->cpsw->dev->power.deferred_resume 0-1
PARAM_VALUE 0 dev->priv->cpsw->dev->power.idle_notification 0-1
PARAM_VALUE 0 dev->priv->cpsw->dev->power.request 0-4
PARAM_VALUE 0 dev->priv->cpsw->dev->power.request_pending 0-1
PARAM_VALUE 0 dev->priv->cpsw->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 dev->priv->cpsw->dev->power.runtime_status s32min-s32max
PARAM_VALUE 0 dev->priv->cpsw->dev->power.timer_autosuspends 0-1
PARAM_VALUE 0 dev->priv->cpsw->dev->power.usage_count.counter s32min-s32max
PARAM_VALUE 0 dev->priv->cpsw->dev->power.wakeirq->status 0-4294967295
CAPPED_DATA 0 &dev->ethtool->rss_lock 1
DATA_SOURCE 1 rss_context r nla_get_u32
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 &dev->ethtool->rss_lock
HALF_LOCKED2 &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 ethtool_netdev_state)->rss_lock