Documented in 1 files:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/bonding/bond_3ad.c ad_port_selection_logic() -> __get_first_agg()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->aggregator 4096-ptr_max
PARAM_VALUE 0 port->slave 4096-ptr_max
PARAM_VALUE 0 port->slave->bond->dev 4096-ptr_max
PARAM_VALUE 0 *port->slave->bond->dev->name 0-255
BUF_SIZE 0 port 256
CAPPED_DATA 0 port 1
DATA_SOURCE 0 port $0
BIT_INFO 0 port->sm_vars 0x100,0xffff
PREEMPT_ADD
LOCK2 &bond->mode_lock
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct bonding)->mode_lock

drivers/net/bonding/bond_3ad.c bond_3ad_handle_link_change() -> __get_first_agg()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->actor_admin_port_key 0,64-65472
PARAM_VALUE 0 port->actor_oper_port_key 0,64-65472
PARAM_VALUE 0 port->slave 1-u64max
PARAM_VALUE 0 port->sm_vars 0-65533
PARAM_VALUE 0 *port->slave->bond->dev->name 0-255
BUF_SIZE 0 port 256
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &slave->bond->mode_lock
LOCK2 bh
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct bonding)->mode_lock

drivers/net/bonding/bond_3ad.c bond_3ad_state_machine_handler() -> __get_first_agg()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->slave 1-u64max
BUF_SIZE 0 port 256
PREEMPT_ADD <- disables preempt
LOCK2 &bond->mode_lock
LOCK2 bh
LOCK2 rcu_read
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct bonding)->mode_lock

drivers/net/bonding/bond_3ad.c bond_3ad_unbind_slave() -> __get_first_agg()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->actor_oper_port_state 0-195
PARAM_VALUE 0 port->slave 1-u64max
PARAM_VALUE 0 port->slave->dev->nd_net.net->ipv4.fqdir->f->frag_expire 0,663510801442193408,1753052602134376448,4007388366431105024,8876081723503042560
PARAM_VALUE 0 port->slave->dev->nd_net.net->ipv4.fqdir->f->qsize 0,304,320
PARAM_VALUE 0 port->slave->dev->ndisc_ops->fill_addr_option 9149257602806276096
PARAM_VALUE 0 port->slave->dev->ndisc_ops->parse_options 4570881757937598464
PARAM_VALUE 0 port->slave->dev->ndisc_ops->update 8455145027589103616
PARAM_VALUE 0 port->slave->dev->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
PARAM_VALUE 0 port->slave->dev->rtnl_link_ops->priv_size 0,8,32,48,56,88,112,120,144,160,224,240,256,296,616,624,728,736,1056,1128,1336,1616,2176,2240,2272,2560,3296,3720,9688-u64max
PARAM_VALUE 0 *port->slave->bond->dev->name 0-255
BUF_SIZE 0 port 256
CAPPED_DATA 0 port 1
BIT_INFO 0 port->actor_oper_port_state 0x0,0xc3
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bond->mode_lock
LOCK2 bh
TYPE_LOCK (struct bonding)->mode_lock

drivers/net/bonding/bond_3ad.c bond_3ad_unbind_slave() -> __get_first_agg()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->actor_oper_port_state 0-195
PARAM_VALUE 0 port->slave 1-u64max
PARAM_VALUE 0 port->slave->dev->nd_net.net->ipv4.fqdir->f->frag_expire 0,663510801442193408,1753052602134376448,4007388366431105024,8876081723503042560
PARAM_VALUE 0 port->slave->dev->nd_net.net->ipv4.fqdir->f->qsize 0,304,320
PARAM_VALUE 0 port->slave->dev->ndisc_ops->fill_addr_option 9149257602806276096
PARAM_VALUE 0 port->slave->dev->ndisc_ops->parse_options 4570881757937598464
PARAM_VALUE 0 port->slave->dev->ndisc_ops->update 8455145027589103616
PARAM_VALUE 0 port->slave->dev->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
PARAM_VALUE 0 port->slave->dev->rtnl_link_ops->priv_size 0,8,32,48,56,88,112,120,144,160,224,240,256,296,616,624,728,736,1056,1128,1336,1616,2176,2240,2272,2560,3296,3720,9688-u64max
PARAM_VALUE 0 *port->slave->bond->dev->name 0-255
BUF_SIZE 0 port 256
CAPPED_DATA 0 port 1
BIT_INFO 0 port->actor_oper_port_state 0x0,0xc3
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bond->mode_lock
LOCK2 bh
TYPE_LOCK (struct bonding)->mode_lock

drivers/net/bonding/bond_3ad.c bond_3ad_unbind_slave() -> __get_first_agg()

Type Parameter Key Value
PARAM_VALUE 0 port 4096-ptr_max
PARAM_VALUE 0 port->actor_oper_port_state 0-195
PARAM_VALUE 0 port->slave 1-u64max
PARAM_VALUE 0 port->slave->dev->nd_net.net->ipv4.fqdir->f->frag_expire 0,663510801442193408,1753052602134376448,4007388366431105024,8876081723503042560
PARAM_VALUE 0 port->slave->dev->nd_net.net->ipv4.fqdir->f->qsize 0,304,320
PARAM_VALUE 0 port->slave->dev->ndisc_ops->fill_addr_option 9149257602806276096
PARAM_VALUE 0 port->slave->dev->ndisc_ops->parse_options 4570881757937598464
PARAM_VALUE 0 port->slave->dev->ndisc_ops->update 8455145027589103616
PARAM_VALUE 0 port->slave->dev->rtnl_link_ops->maxtype 0-6,8-10,15,18,20,22,24,34,50
PARAM_VALUE 0 port->slave->dev->rtnl_link_ops->priv_size 0,8,32,48,56,88,112,120,144,160,224,240,256,296,616,624,728,736,1056,1128,1336,1616,2176,2240,2272,2560,3296,3720,9688-u64max
PARAM_VALUE 0 *port->slave->bond->dev->name 0-255
BUF_SIZE 0 port 256
CAPPED_DATA 0 port 1
BIT_INFO 0 port->actor_oper_port_state 0x0,0xc3
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &bond->mode_lock
LOCK2 bh
TYPE_LOCK (struct bonding)->mode_lock