Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/net/dsa/netc/netc_main.c netc_add_vlan_egress_rule() -> netc_num_available_ports()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->ds 4096-ptr_max
DATA_SOURCE 0 priv $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 priv unit_byte
LOCK2 &priv->vft_lock
TYPE_LOCK (struct netc_switch)->vft_lock

drivers/net/dsa/netc/netc_main.c netc_delete_vlan_egress_rule() -> netc_num_available_ports()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->ds 4096-ptr_max
CAPPED_DATA 0 priv->ds 1
DATA_SOURCE 0 priv $0
RX_PATH
TASK_NOT_RUNNING
UNITS 0 priv unit_byte
HALF_LOCKED2 &priv->vft_lock
HALF_LOCKED2 0 &priv->vft_lock
TYPE_LOCK (struct netc_switch)->vft_lock

drivers/net/dsa/netc/netc_main.c netc_init_ntmp_bitmap_sizes() -> netc_num_available_ports()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->ds 4096-ptr_max
BUF_SIZE 0 priv s32min-(-2),1-s32max
BUF_SIZE 0 priv s32min-(-2),1-s32max
CAPPED_DATA 0 priv->ds 1
CAPPED_DATA 0 priv->ds->index 1
DATA_SOURCE 0 priv $0
MEM_ZERO 0 &priv->ntmp.tbl
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 priv->info->num_ports
UNITS 0 priv unit_byte
HALF_LOCKED2 global &dsa2_mutex

drivers/net/dsa/netc/netc_main.c netc_port_update_vlan_egress_rule() -> netc_num_available_ports()

Type Parameter Key Value
PARAM_VALUE 0 priv 4096-ptr_max
PARAM_VALUE 0 priv->ds 4096-ptr_max
CAPPED_DATA 0 priv->ds 1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 priv unit_byte
LOCK2 &priv->vft_lock
TYPE_LOCK (struct netc_switch)->vft_lock