[PATCH v2 045/148] net/ice/base: implement switch recipe reuse feature

Bruce Richardson bruce.richardson at intel.com
Tue Jun 18 16:53:22 CEST 2024


On Wed, Jun 12, 2024 at 04:00:39PM +0100, Anatoly Burakov wrote:
> From: Ian Stokes <ian.stokes at intel.com>
> 
> If FW supports the corresponding functionality, the driver allows PFs to
> subscribe the same switch recipes. Then when the PF is done with a switch
> recipe, the PF can ask the FW to free that switch recipe.
> 
> When the FW detects that all subscribing PFs have freed the switch recipe, the
> FW will free the switch recipe so that it can be reused.
> 
> This feature also fixes a problem where all switch recipes would eventually be
> exhausted because switch recipes could not be freed, as freeing a shared recipe
> could potentially break other PFs that were using it.
> 
> Signed-off-by: Steven Zou <steven.zou at intel.com>
> Signed-off-by: Ian Stokes <ian.stokes at intel.com>
> ---
>  drivers/net/ice/base/ice_adminq_cmd.h |   2 +
>  drivers/net/ice/base/ice_common.c     |   2 +
>  drivers/net/ice/base/ice_switch.c     | 277 +++++++++++++++++++++++---
>  drivers/net/ice/base/ice_switch.h     |   2 +
>  drivers/net/ice/base/ice_type.h       |   2 +
>  5 files changed, 262 insertions(+), 23 deletions(-)
> 

<snip> 

> +/**
> + * ice_alloc_recipe - add recipe resource
> + * @hw: pointer to the hardware structure
> + * @rid: recipe ID returned as response to AQ call
> + */
> +enum ice_status ice_alloc_recipe(struct ice_hw *hw, u16 *rid)

This use of ice_status here in this patch breaks the patch-by-patch builds.

error: conflicting types for 'ice_alloc_recipe' due to enum/integer mismatch;

Probably want to convert the ice_status's to ints globally here.

/Bruce


More information about the dev mailing list