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() -> (struct ethtool_ops)->create_rxfh_context()

Type Parameter Key Value
PARAM_VALUE 0 net_dev 4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent 0,4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent->bus 0,4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent->class 0,4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent->power.request 0-4
PARAM_VALUE 0 net_dev->dev.parent->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 net_dev->dev.parent->power.wakeirq 0,4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 net_dev->dev.parent->type 0,4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool 4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool->rss_ctx.xa_flags 4-u32max
PARAM_VALUE 0 net_dev->ethtool->rss_ctx.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->ethtool->rss_lock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->ethtool->rss_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool->rss_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 net_dev->ethtool->rss_lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 net_dev->ethtool->rss_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 net_dev->ethtool->rss_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->ethtool->rss_lock.wait_lock.owner (-1)
PARAM_VALUE 0 net_dev->ethtool->rss_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 net_dev->ethtool_ops 4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool_ops->begin 0,1835931156019712000,3096438129622650880,3900617307435175936,5716752743725981696,7946597811871383552,8525681326485266432
PARAM_VALUE 0 net_dev->ethtool_ops->create_rxfh_context 1-u64max
PARAM_VALUE 0 net_dev->ethtool_ops->get_rx_ring_count 1-u64max
PARAM_VALUE 0 net_dev->ethtool_ops->rxfh_key_space 0
PARAM_VALUE 0 net_dev->ethtool_ops->rxfh_priv_size 0,8,176
PARAM_VALUE 0 net_dev->ethtool_ops->set_rxfh 1-u64max
PARAM_VALUE 0 net_dev->lock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 net_dev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 net_dev->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 net_dev->lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 net_dev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 net_dev->moving_ns 0
PARAM_VALUE 0 net_dev->netdev_ops 4096-ptr_max
PARAM_VALUE 0 net_dev->refcnt_tracker.list.next->next 4096-ptr_max
PARAM_VALUE 0 net_dev->refcnt_tracker.list.next->prev 4096-ptr_max
PARAM_VALUE 0 net_dev->reg_state 0-1
PARAM_VALUE 1 ctx 4096-ptr_max
PARAM_VALUE 1 ctx->key_size 0-u16max
PARAM_VALUE 1 ctx->priv_size 0,8,176
PARAM_VALUE 2 rxfh 1123508468146044928
PARAM_VALUE 2 rxfh->hfunc 0
PARAM_VALUE 2 rxfh->indir 0,16,4096-ptr_max
PARAM_VALUE 2 rxfh->indir_size 0-4294967294
PARAM_VALUE 2 rxfh->input_xfrm 0-2,255
PARAM_VALUE 2 rxfh->key 0,4096-ptr_max
PARAM_VALUE 2 rxfh->key_size 0-u16max
PARAM_VALUE 2 rxfh->rss_context 1-u32max
PARAM_VALUE 2 rxfh->rss_delete 0
PARAM_VALUE 3 extack 0
BUF_SIZE 1 ctx 24-s32max
BUF_SIZE 1 ctx 24-s32max
BUF_SIZE 3 extack 0
CAPPED_DATA 0 net_dev->nd_net.net 1
CAPPED_DATA 0 &net_dev->ethtool->rss_lock 1
CAPPED_DATA 1 ctx 1
CAPPED_DATA 1 ctx->key_size 1
DATA_SOURCE 0 net_dev $0
DATA_SOURCE 1 ctx r ethtool_rxfh_ctx_alloc
FUZZY_MAX 0 net_dev->reg_state 1
HARD_MAX 0 net_dev->reg_state 1
USER_DATA 2 rxfh->hfunc 0
USER_DATA 2 rxfh->input_xfrm 0
USER_DATA 2 rxfh->rss_context 1-4294967294
NO_OVERFLOW_SIMPLE 1 ctx->indir_size
NO_OVERFLOW_SIMPLE 1 ctx->key_off
USER_PTR 2 rxfh->indir
USER_PTR 2 rxfh->key
LOCK2 0 &net_dev->ethtool->rss_lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct ethtool_netdev_state)->rss_lock

net/ethtool/rss.c ethnl_rss_create_doit() -> (struct ethtool_ops)->create_rxfh_context()

Type Parameter Key Value
PARAM_VALUE 0 net_dev 4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent 0,4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent->bus 0,4096-ptr_max
PARAM_VALUE 0 net_dev->dev.parent->type 0,4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool 4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool->rss_ctx.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->ethtool->rss_lock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->ethtool->rss_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool->rss_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 net_dev->ethtool->rss_lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 net_dev->ethtool->rss_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 net_dev->ethtool->rss_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->ethtool->rss_lock.wait_lock.owner (-1)
PARAM_VALUE 0 net_dev->ethtool->rss_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 net_dev->ethtool_ops 4096-ptr_max
PARAM_VALUE 0 net_dev->ethtool_ops->rxfh_key_space 0
PARAM_VALUE 0 net_dev->ethtool_ops->rxfh_max_num_contexts 0,2,8,16,33
PARAM_VALUE 0 net_dev->ethtool_ops->rxfh_priv_size 0,8,176
PARAM_VALUE 0 net_dev->lock.dep_map->name 0-255
PARAM_VALUE 0 net_dev->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 net_dev->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 net_dev->lock.first_waiter->task->blocked_on 0
PARAM_VALUE 0 net_dev->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 net_dev->netdev_ops 4096-ptr_max
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.deferred_resume 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.idle_notification 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.request 0-4
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.request_pending 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.runtime_status s32min-s32max
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.timer_autosuspends 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.usage_count.counter s32min-s32max
PARAM_VALUE 0 net_dev->priv->clk->core->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.deferred_resume 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.idle_notification 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.request 0-4294967295
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.request_pending 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.runtime_error s32min-s32max
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.runtime_status s32min-s32max
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.timer_autosuspends 0-1
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.usage_count.counter s32min-s32max
PARAM_VALUE 0 net_dev->priv->clk->core->parent->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 net_dev->priv->clk->core->parent->enable_count 0-4294967295
PARAM_VALUE 0 net_dev->priv->clk->core->parent->prepare_count 0-4294967295
PARAM_VALUE 0 net_dev->priv->clk->core->parent->protect_count 0-4294967295
PARAM_VALUE 0 net_dev->priv->clk->core->prepare_count 0-4294967295
PARAM_VALUE 0 net_dev->priv->clk->core->protect_count 0-4294967295
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.deferred_resume 0-1
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.idle_notification 0-1
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.request 0-4
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.request_pending 0-1
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.runtime_error s32min-(-17),(-15)-(-14),(-12),(-10)-s32max
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.runtime_status s32min-s32max
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.timer_autosuspends 0-1
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.usage_count.counter s32min-s32max
PARAM_VALUE 0 net_dev->priv->cpsw->dev->power.wakeirq->status 0-4294967295
PARAM_VALUE 0 *net_dev->name 0
PARAM_VALUE 0 *net_dev->priv->dp.netdev->name 0
PARAM_VALUE 1 ctx 4096-ptr_max
PARAM_VALUE 1 ctx->key_size 0-u16max
PARAM_VALUE 1 ctx->priv_size 0,8,176
PARAM_VALUE 2 rxfh 7234425864374771712
PARAM_VALUE 2 rxfh->indir 0,4096-ptr_max
PARAM_VALUE 2 rxfh->key_size 0-u16max
PARAM_VALUE 2 rxfh->rss_delete 0
PARAM_VALUE 3 extack 4971238048455385088
BUF_SIZE 1 ctx 24-s32max
BUF_SIZE 1 ctx 24-s32max
CAPPED_DATA 0 net_dev->ethtool_ops->rxfh_max_num_contexts 1
CAPPED_DATA 0 &net_dev->ethtool->rss_lock 1
CAPPED_DATA 1 ctx 1
CAPPED_DATA 1 ctx->key_size 1
DATA_SOURCE 1 ctx r ethtool_rxfh_ctx_alloc
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 ctx->indir_size
NO_OVERFLOW_SIMPLE 1 ctx->key_off
LOCK2 0 &net_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