net/bnxt: release HWRM lock before returning

The function bnxt_vnic_rss_configure_thor() returns early when
all receive queues are stopped without releasing the hwrm
spinlock, which causes subsequent HWRM operations to hang. Fix
by ensuring that the lock is released before returning from
this function.

Fixes: 38412304b50a ("net/bnxt: enable RSS for thor-based controllers")
Cc: stable@dpdk.org

Signed-off-by: Lance Richardson <lance.richardson@broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
This commit is contained in:
Lance Richardson 2019-11-04 15:27:46 -05:00 committed by Ferruh Yigit
parent f9241d2fae
commit 67678ec076

View File

@ -4337,8 +4337,10 @@ bnxt_vnic_rss_configure_thor(struct bnxt *bp, struct bnxt_vnic_info *vnic)
}
/* Return if no rings are active. */
if (cnt == max_rings)
if (cnt == max_rings) {
HWRM_UNLOCK();
return 0;
}
/* Add rx/cp ring pair to RSS table. */
rxr = rxqs[k]->rx_ring;