Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/net/ethernet/cisco/enic/enic_pp.c enic_pp_associate() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_pp_associate() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->proxy 0-2
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_pp_associate() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 0 vdev 4096-ptr_max
PARAM_VALUE 0 vdev->proxy 0-2
PARAM_VALUE 1 index u16max
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_pp_disassociate() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_pp_disassociate() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index u16max
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_pp_preassociate_rr() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_process_get_pp_request() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 &netdev->ethtool->rss_lock
HALF_LOCKED2 &netdev->lock
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_process_get_pp_request() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 &netdev->ethtool->rss_lock
HALF_LOCKED2 &netdev->lock
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_set_port_profile() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_pp.c enic_unset_port_profile() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 vdev->pdev->dev.cma_area->available_count
LOCK2 &enic->devcmd_lock
LOCK2 bh
HALF_LOCKED2 global &rtnl_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_main.c enic_set_vf_mac() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 index 0-65534[c]
LOCK2 &enic->devcmd_lock
LOCK2 bh
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_main.c enic_set_vf_port() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
PARAM_VALUE 1 index 0-65534
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &enic->devcmd_lock
LOCK2 bh
LOCK2 global &rtnl_mutex
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &rx_queue_mutex
TYPE_LOCK (struct enic)->devcmd_lock

drivers/net/ethernet/cisco/enic/enic_api.c enic_api_devcmd_proxy_by_index() -> vnic_dev_cmd_proxy_by_index_start()

Type Parameter Key Value
DATA_SOURCE 1 index $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &enic->devcmd_lock
LOCK2 &enic->enic_api_lock
LOCK2 &ufdev->lock
LOCK2 bh
HALF_LOCKED2 &qp_grp->lock
HALF_LOCKED2 &qp_grp->vf->pf->usdev_lock
TYPE_LOCK (struct enic)->devcmd_lock
TYPE_LOCK (struct enic)->enic_api_lock
TYPE_LOCK (struct usnic_fwd_dev)->lock
TYPE_LOCK (struct usnic_ib_dev)->usdev_lock