Home Home > GIT Browse > openSUSE-15.1
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Bogendoerfer <tbogendoerfer@suse.de>2019-06-07 13:27:44 +0200
committerThomas Bogendoerfer <tbogendoerfer@suse.de>2019-06-07 13:29:41 +0200
commit8294d0b7342160d1f0711645906ec21f7119c89f (patch)
tree9a79f50b6d958405833c25e40e8e311385bf977a
parente5b08e82f077fccf224ef26a724faa6f345c5cd4 (diff)
RDMA/hns: Bugfix for SCC hem free (bsc#1104427 FATE#326416
bsc#1137236).
-rw-r--r--patches.drivers/RDMA-hns-Bugfix-for-SCC-hem-free.patch41
-rw-r--r--series.conf1
2 files changed, 42 insertions, 0 deletions
diff --git a/patches.drivers/RDMA-hns-Bugfix-for-SCC-hem-free.patch b/patches.drivers/RDMA-hns-Bugfix-for-SCC-hem-free.patch
new file mode 100644
index 0000000000..9dad6cd70b
--- /dev/null
+++ b/patches.drivers/RDMA-hns-Bugfix-for-SCC-hem-free.patch
@@ -0,0 +1,41 @@
+From: Yangyang Li <liyangyang20@huawei.com>
+Date: Sun, 7 Apr 2019 13:23:39 +0800
+Subject: RDMA/hns: Bugfix for SCC hem free
+Patch-mainline: v5.1-rc5
+Git-commit: 00fb67ec6b98114a887d9ef26fc7c3e566e7f665
+References: bsc#1104427 FATE#326416 bsc#1137236
+
+The method of hem free for SCC context is different from qp context.
+
+In the current version, if free SCC hem during the execution of qp free,
+there may be smmu error as below:
+
+ arm-smmu-v3 arm-smmu-v3.1.auto: event 0x10 received:
+ arm-smmu-v3 arm-smmu-v3.1.auto: 0x00007d0000000010
+ arm-smmu-v3 arm-smmu-v3.1.auto: 0x000012000000017c
+ arm-smmu-v3 arm-smmu-v3.1.auto: 0x00000000000009e0
+ arm-smmu-v3 arm-smmu-v3.1.auto: 0x0000000000000000
+
+As SCC context is still used by hardware after qp free, we can solve this
+problem by removing SCC hem free from hns_roce_qp_free.
+
+Fixes: 6a157f7d1b14 ("RDMA/hns: Add SCC context allocation support for hip08")
+Signed-off-by: Yangyang Li <liyangyang20@huawei.com>
+Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
+Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
+---
+ drivers/infiniband/hw/hns/hns_roce_qp.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+--- a/drivers/infiniband/hw/hns/hns_roce_qp.c
++++ b/drivers/infiniband/hw/hns/hns_roce_qp.c
+@@ -273,9 +273,6 @@ void hns_roce_qp_free(struct hns_roce_de
+ wait_for_completion(&hr_qp->free);
+
+ if ((hr_qp->ibqp.qp_type) != IB_QPT_GSI) {
+- if (hr_dev->caps.sccc_entry_sz)
+- hns_roce_table_put(hr_dev, &qp_table->sccc_table,
+- hr_qp->qpn);
+ if (hr_dev->caps.trrl_entry_sz)
+ hns_roce_table_put(hr_dev, &qp_table->trrl_table,
+ hr_qp->qpn);
diff --git a/series.conf b/series.conf
index 418e99db2f..0dc9849c20 100644
--- a/series.conf
+++ b/series.conf
@@ -46003,6 +46003,7 @@
patches.drivers/IB-hfi1-Eliminate-opcode-tests-on-mr-deref.patch
patches.drivers/IB-hfi1-Fix-the-allocation-of-RSM-table.patch
patches.drivers/RDMA-hns-Fix-bug-that-caused-srq-creation-to-fail.patch
+ patches.drivers/RDMA-hns-Bugfix-for-SCC-hem-free.patch
patches.suse/btrfs-do-not-allow-trimming-when-a-fs-is-mounted-wit.patch
patches.drm/0001-drm-udl-add-a-release-method-and-delay-modeset-teard.patch
patches.drm/0003-drm-mediatek-Fix-an-error-code-in-mtk_hdmi_dt_parse_.patch