From: Ajay Sharma Date: Thu, 3 Nov 2022 19:16:27 +0000 (-0700) Subject: [PATCH 11/44] net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES X-Git-Tag: archive/raspbian/6.1.147-1+rpi1^2~34 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e8063580a4c1401f0389bd2ca481ad0e6c83cdd1;p=linux.git [PATCH 11/44] net: mana: Define and process GDMA response code GDMA_STATUS_MORE_ENTRIES When doing memory registration, the PF may respond with GDMA_STATUS_MORE_ENTRIES to indicate a follow request is needed. This is not an error and should be processed as expected. Signed-off-by: Ajay Sharma Reviewed-by: Dexuan Cui Signed-off-by: Long Li Link: https://lore.kernel.org/r/1667502990-2559-10-git-send-email-longli@linuxonhyperv.com Acked-by: Haiyang Zhang Signed-off-by: Leon Romanovsky (cherry picked from commit de372f2a9ca7ada2698ecac7df8f02407cd98fa0) Signed-off-by: Bastian Blank Gbp-Pq: Topic features/all/ethernet-microsoft Gbp-Pq: Name 0011-net-mana-Define-and-process-GDMA-response-code-GDMA_.patch --- diff --git a/drivers/net/ethernet/microsoft/mana/hw_channel.c b/drivers/net/ethernet/microsoft/mana/hw_channel.c index f2e25f97e4c..fdf1cc83c9a 100644 --- a/drivers/net/ethernet/microsoft/mana/hw_channel.c +++ b/drivers/net/ethernet/microsoft/mana/hw_channel.c @@ -842,7 +842,7 @@ int mana_hwc_send_request(struct hw_channel_context *hwc, u32 req_len, goto out; } - if (ctx->status_code) { + if (ctx->status_code && ctx->status_code != GDMA_STATUS_MORE_ENTRIES) { dev_err(hwc->dev, "HWC: Failed hw_channel req: 0x%x\n", ctx->status_code); err = -EPROTO; diff --git a/include/net/mana/gdma.h b/include/net/mana/gdma.h index 11fc1cc67c0..202ac405ab5 100644 --- a/include/net/mana/gdma.h +++ b/include/net/mana/gdma.h @@ -9,6 +9,8 @@ #include "shm_channel.h" +#define GDMA_STATUS_MORE_ENTRIES 0x00000105 + /* Structures labeled with "HW DATA" are exchanged with the hardware. All of * them are naturally aligned and hence don't need __packed. */