From: Subbaraya Sundeep <sbhatta@marvell.com>
Emit logs when is_valid_txschq() rejects a scheduler queue
mapping so misconfigured TX scheduler allocations are easier to
diagnose.
Signed-off-by: Subbaraya Sundeep <sbhatta@marvell.com>
Signed-off-by: Ratheesh Kannoth <rkannoth@marvell.com>
---
v1 -> v2:
- Switch dev_err() to dev_err_ratelimited() on PF/VF-driven paths
- Add schq and lvl to both rejection messages
- Clarify PF/link mismatch wording instead of "Invalid tx link"
- Stop logging another function's map_func pcifunc
---
.../net/ethernet/marvell/octeontx2/af/rvu_nix.c | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c b/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c
index 153eb57bad06..b0551559dacb 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c
+++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c
@@ -324,15 +324,23 @@ static bool is_valid_txschq(struct rvu *rvu, int blkaddr,
if (lvl >= hw->cap.nix_tx_aggr_lvl) {
if ((nix_get_tx_link(rvu, map_func) !=
nix_get_tx_link(rvu, pcifunc)) &&
- (rvu_get_pf(rvu->pdev, map_func) !=
- rvu_get_pf(rvu->pdev, pcifunc)))
+ (rvu_get_pf(rvu->pdev, map_func) !=
+ rvu_get_pf(rvu->pdev, pcifunc))) {
+ dev_err_ratelimited(rvu->dev,
+ "NIX TX schq %u lvl %d: pcifunc %x PF/link mismatch\n",
+ schq, lvl, pcifunc);
return false;
- else
+ } else {
return true;
+ }
}
- if (map_func != pcifunc)
+ if (map_func != pcifunc) {
+ dev_err_ratelimited(rvu->dev,
+ "NIX TX schq %u lvl %d: not owned by pcifunc %x\n",
+ schq, lvl, pcifunc);
return false;
+ }
return true;
}
--
2.43.0