Revert "scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs()"

Reported to cause problems with HPE DL gen 9 servers, where the
module is in use[0].

Upstream has not followup for this (at least none obvious), replied
to the original patch to notify them about potential problems[1]

[0]: https://forum.proxmox.com/threads/hp-dl-380-gen-9-issues-on-5-4-73-5-4-78-kernel.79907/page-2#post-354176
[1]: https://lore.kernel.org/linux-scsi/54f36c62-10bf-8736-39ce-27ece097d9de@proxmox.com/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Thomas Lamprecht 2020-12-03 11:21:40 +01:00
parent f732534e11
commit 2501fb7b84

View File

@ -0,0 +1,47 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Thomas Lamprecht <t.lamprecht@proxmox.com>
Date: Thu, 3 Dec 2020 07:45:18 +0100
Subject: [PATCH] Revert "scsi: be2iscsi: Fix a theoretical leak in
beiscsi_create_eqs()"
This reverts commit 552b270b5784dc322807df89eb359e74fc570fde.
---
drivers/scsi/be2iscsi/be_main.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
index 0fa455357594..0760d0bd8a10 100644
--- a/drivers/scsi/be2iscsi/be_main.c
+++ b/drivers/scsi/be2iscsi/be_main.c
@@ -3020,7 +3020,6 @@ static int beiscsi_create_eqs(struct beiscsi_hba *phba,
goto create_eq_error;
}
- mem->dma = paddr;
mem->va = eq_vaddress;
ret = be_fill_queue(eq, phba->params.num_eq_entries,
sizeof(struct be_eq_entry), eq_vaddress);
@@ -3030,6 +3029,7 @@ static int beiscsi_create_eqs(struct beiscsi_hba *phba,
goto create_eq_error;
}
+ mem->dma = paddr;
ret = beiscsi_cmd_eq_create(&phba->ctrl, eq,
BEISCSI_EQ_DELAY_DEF);
if (ret) {
@@ -3086,7 +3086,6 @@ static int beiscsi_create_cqs(struct beiscsi_hba *phba,
goto create_cq_error;
}
- mem->dma = paddr;
ret = be_fill_queue(cq, phba->params.num_cq_entries,
sizeof(struct sol_cqe), cq_vaddress);
if (ret) {
@@ -3096,6 +3095,7 @@ static int beiscsi_create_cqs(struct beiscsi_hba *phba,
goto create_cq_error;
}
+ mem->dma = paddr;
ret = beiscsi_cmd_cq_create(&phba->ctrl, cq, eq, false,
false, 0);
if (ret) {