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_flags() -> __netdev_update_features()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dev | 4096-ptr_max |
| CAPPED_DATA | 0 | dev->wanted_features | 1 |
| DATA_SOURCE | 0 | dev | $0 |
| NOCHECK_CALL |
net/ethtool/ioctl.c ethtool_set_features() -> __netdev_update_features()
| 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_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | dev->ethtool_ops->begin | 0,1835931156019712000,3096438129622650880,3900617307435175936,5716752743725981696,7946597811871383552,8525681326485266432 |
| 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 |
| CAPPED_DATA | 0 | dev->nd_net.net | 1 |
| DATA_SOURCE | 0 | dev | $0 |
| FUZZY_MAX | 0 | dev->reg_state | 1 |
| HARD_MAX | 0 | dev->reg_state | 1 |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &rtnl_mutex |
net/ethtool/ioctl.c ethtool_set_one_feature() -> __netdev_update_features()
| 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_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | dev->ethtool_ops->begin | 0,1835931156019712000,3096438129622650880,3900617307435175936,5716752743725981696,7946597811871383552,8525681326485266432 |
| 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 |
| CAPPED_DATA | 0 | dev->nd_net.net | 1 |
| DATA_SOURCE | 0 | dev | $0 |
| FUZZY_MAX | 0 | dev->reg_state | 1 |
| HARD_MAX | 0 | dev->reg_state | 1 |
| NOCHECK_CALL | |||
| HALF_LOCKED2 | global &rtnl_mutex |
net/core/dev.c netdev_change_features() -> __netdev_update_features()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dev | 4096-ptr_max |
| PARAM_VALUE | 0 | dev->dev.dma_io_tlb_mem->phys_limit | 0-s64max |
| PARAM_VALUE | 0 | dev->dev.kobj.parent->sd->attr.open->nr_mmapped | 0-4294967295 |
| PARAM_VALUE | 0 | dev->dev.kobj.sd->attr.open->nr_mmapped | 0-4294967295 |
| PARAM_VALUE | 0 | dev->dev.power.wakeirq->status | 0-4294967295 |
| PARAM_VALUE | 0 | dev->header_ops->cache | 0,4002040155852992512,6291592314023907328,9038097620534984704 |
| PARAM_VALUE | 0 | dev->header_ops->cache_update | 0,4136776623896797184,7422325842290319360 |
| PARAM_VALUE | 0 | dev->header_ops->create | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->header_ops->parse | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->header_ops->parse_protocol | 0,4927389631704563712,5013334982761803776,5267698508377800704 |
| PARAM_VALUE | 0 | dev->header_ops->validate | 0 |
| PARAM_VALUE | 0 | dev->netdev_ops->ndo_init | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->netdev_ops->ndo_uninit | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->queues_kset->kobj.sd->attr.open->nr_mmapped | 0-4294967295 |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->alloc | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->changelink | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->dellink | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->fill_info | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->fill_linkxstats | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->fill_slave_info | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->fill_xstats | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->get_link_net | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->get_linkxstats_size | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->get_num_rx_queues | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->get_num_tx_queues | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->get_size | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->get_slave_size | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->get_xstats_size | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->kind | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->maxtype | 0-6,8-10,15-16,18,20,22,24,33-34,50 |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->newlink | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->peer_type | 0-1 |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->policy | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->setup | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->slave_changelink | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->slave_maxtype | 0,12,45 |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->slave_policy | 0,4096-ptr_max |
| PARAM_VALUE | 0 | dev->rtnl_link_ops->validate | 0,4096-ptr_max |
| PARAM_VALUE | 0 | *dev->name | 0-255 |
| BUF_SIZE | 0 | dev->name_node | (-1),64 |
| BUF_SIZE | 0 | dev->name_node->name | (-1),16 |
| CAPPED_DATA | 0 | dev | 1 |
| DATA_SOURCE | 0 | dev | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 0 | dev->flags | 0-526337[c] |
| USER_DATA | 0 | dev->ifindex | 0-s32max[c] |
| USER_DATA | 0 | dev->mtu | 0-s32max[c] |
| NO_OVERFLOW_SIMPLE | 0 | dev->real_num_rx_queues | |
| NO_OVERFLOW_SIMPLE | 0 | dev->real_num_tx_queues | |
| UNITS | 0 | dev | unit_byte |
| HALF_LOCKED2 | 0 | &dev->lock |
net/core/dev.c netdev_sync_lower_features() -> __netdev_update_features()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | dev | 4096-ptr_max |
| PARAM_VALUE | 0 | dev->features | 32768-u64max |
| PARAM_VALUE | 0 | dev->netdev_ops | 4096-ptr_max |
| PARAM_VALUE | 0 | dev->netdev_ops->ndo_set_features | 0,4096-ptr_max |
| DATA_SOURCE | 0 | dev | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &upper->lock | ||
| HALF_LOCKED2 | global &rtnl_mutex |
net/core/dev.c netdev_update_features() -> __netdev_update_features()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | dev->devlink_port | (-1),472 |
| 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->qdisc_tx_busylock | (-1),16 |
| BUF_SIZE | 0 | dev->rtnl_link_ops | (-1),288 |
| DATA_SOURCE | 0 | dev | $0 |
| STR_LEN | 0 | dev | (-1),9-10 |
| STR_LEN | 0 | dev | (-1),9-10 |
| STR_LEN | 0 | dev->name | (-1),15 |
| 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->group | s32min-s32max |
| USER_DATA | 0 | dev->ifindex | s32min-s32max |
| USER_DATA | 0 | dev->mtu | 0-u32max[c] |
| USER_DATA | 0 | dev->num_tc | 2-16[c] |
| USER_DATA | 0 | dev->real_num_rx_queues | 1-s32max[c] |
| USER_DATA | 0 | *dev->dev_addr | 0-255 |
| NO_OVERFLOW_SIMPLE | 0 | dev->devlink_port->index | |
| NO_OVERFLOW_SIMPLE | 0 | dev->group | |
| 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_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->name | |
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &port->pnodes_lock | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &xenwatch_mutex | ||
| HALF_LOCKED2 | 0 | &dev->ethtool->rss_lock | |
| HALF_LOCKED2 | 0 | &dev->lock |
net/ethtool/features.c ethnl_set_features() -> __netdev_update_features()
| 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->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 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | global &rtnl_mutex | ||
| 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 &rx_queue_mutex | ||
| HALF_LOCKED2 | rcu_read |