+       if (vnics > pf->max_rsscos_ctxs || vnics > pf->max_vnics) {
   <-----Does this happen very rarely? If so,

if (unlikely(vnics > pf->max_rsscos_ctxs || vnics > pf->max_vnics) { is better?

+               netdev_warn(bp->dev,
+                           "Not enough resources to support NTUPLE
filters, enough resources for up to %d rx rings\n",
+                           min(pf->max_rsscos_ctxs - 1, pf->max_vnics - 1));
                return false;
+       }

On Tue, Jul 26, 2016 at 12:33 AM, Michael Chan
<michael.c...@broadcom.com> wrote:
> From: Vasundhara Volam <vasundhara-v.vo...@broadcom.com>
>
> If there are not enough resources to enable ntuple filtering,
> log a warning message.
>
> v2: Use single message and add missing newline.
>
> Signed-off-by: Vasundhara Volam <vasundhara-v.vo...@broadcom.com>
> Signed-off-by: Michael Chan <michael.c...@broadcom.com>
> ---
>  drivers/net/ethernet/broadcom/bnxt/bnxt.c | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c 
> b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> index 7de7d7a..eac0f2b 100644
> --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
> @@ -5790,8 +5790,12 @@ static bool bnxt_rfs_capable(struct bnxt *bp)
>                 return false;
>
>         vnics = 1 + bp->rx_nr_rings;
> -       if (vnics > pf->max_rsscos_ctxs || vnics > pf->max_vnics)
> +       if (vnics > pf->max_rsscos_ctxs || vnics > pf->max_vnics) {
> +               netdev_warn(bp->dev,
> +                           "Not enough resources to support NTUPLE filters, 
> enough resources for up to %d rx rings\n",
> +                           min(pf->max_rsscos_ctxs - 1, pf->max_vnics - 1));
>                 return false;
> +       }
>
>         return true;
>  #else
> @@ -5804,7 +5808,7 @@ static netdev_features_t bnxt_fix_features(struct 
> net_device *dev,
>  {
>         struct bnxt *bp = netdev_priv(dev);
>
> -       if (!bnxt_rfs_capable(bp))
> +       if ((features & NETIF_F_NTUPLE) && !bnxt_rfs_capable(bp))
>                 features &= ~NETIF_F_NTUPLE;
>
>         /* Both CTAG and STAG VLAN accelaration on the RX side have to be
> --
> 1.8.3.1
>

Reply via email to