|
Denis Kirjanov |
8656e8 |
From babe58e001576c73bba73101dfa8bd2ca7262094 Mon Sep 17 00:00:00 2001
|
|
Denis Kirjanov |
8656e8 |
From: Zhen Lei <thunder.leizhen@huawei.com>
|
|
Denis Kirjanov |
8656e8 |
Date: Fri, 28 May 2021 16:55:55 +0800
|
|
Denis Kirjanov |
8656e8 |
Subject: [PATCH 15/16] ehea: fix error return code in ehea_restart_qps()
|
|
Denis Kirjanov |
8656e8 |
Git-commit: 015dbf5662fd689d581c0bc980711b073ca09a1a
|
|
Denis Kirjanov |
8656e8 |
Patch-mainline: v5.14-rc1
|
|
Denis Kirjanov |
8656e8 |
References: git-fixes
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
Fix to return -EFAULT from the error handling case instead of 0, as done
|
|
Denis Kirjanov |
8656e8 |
elsewhere in this function.
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
By the way, when get_zeroed_page() fails, directly return -ENOMEM to
|
|
Denis Kirjanov |
8656e8 |
simplify code.
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
Fixes: 2c69448bbced ("ehea: DLPAR memory add fix")
|
|
Denis Kirjanov |
8656e8 |
Reported-by: Hulk Robot <hulkci@huawei.com>
|
|
Denis Kirjanov |
8656e8 |
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
|
|
Denis Kirjanov |
8656e8 |
Link: https://lore.kernel.org/r/20210528085555.9390-1-thunder.leizhen@huawei.com
|
|
Denis Kirjanov |
8656e8 |
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|
Denis Kirjanov |
8656e8 |
Signed-off-by: Denis Kirjanov <denis.kirjanov@suse.com>
|
|
Denis Kirjanov |
8656e8 |
---
|
|
Denis Kirjanov |
8656e8 |
drivers/net/ethernet/ibm/ehea/ehea_main.c | 9 +++++----
|
|
Denis Kirjanov |
8656e8 |
1 file changed, 5 insertions(+), 4 deletions(-)
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
diff --git a/drivers/net/ethernet/ibm/ehea/ehea_main.c b/drivers/net/ethernet/ibm/ehea/ehea_main.c
|
|
Denis Kirjanov |
8656e8 |
index 975a7b9867a0..1e5874f2f3cf 100644
|
|
Denis Kirjanov |
8656e8 |
--- a/drivers/net/ethernet/ibm/ehea/ehea_main.c
|
|
Denis Kirjanov |
8656e8 |
+++ b/drivers/net/ethernet/ibm/ehea/ehea_main.c
|
|
Denis Kirjanov |
8656e8 |
@@ -2647,10 +2647,8 @@ static int ehea_restart_qps(struct net_device *dev)
|
|
Denis Kirjanov |
8656e8 |
u16 dummy16 = 0;
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
cb0 = (void *)get_zeroed_page(GFP_KERNEL);
|
|
Denis Kirjanov |
8656e8 |
- if (!cb0) {
|
|
Denis Kirjanov |
8656e8 |
- ret = -ENOMEM;
|
|
Denis Kirjanov |
8656e8 |
- goto out;
|
|
Denis Kirjanov |
8656e8 |
- }
|
|
Denis Kirjanov |
8656e8 |
+ if (!cb0)
|
|
Denis Kirjanov |
8656e8 |
+ return -ENOMEM;
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
for (i = 0; i < (port->num_def_qps); i++) {
|
|
Denis Kirjanov |
8656e8 |
struct ehea_port_res *pr = &port->port_res[i];
|
|
Denis Kirjanov |
8656e8 |
@@ -2670,6 +2668,7 @@ static int ehea_restart_qps(struct net_device *dev)
|
|
Denis Kirjanov |
8656e8 |
cb0);
|
|
Denis Kirjanov |
8656e8 |
if (hret != H_SUCCESS) {
|
|
Denis Kirjanov |
8656e8 |
netdev_err(dev, "query_ehea_qp failed (1)\n");
|
|
Denis Kirjanov |
8656e8 |
+ ret = -EFAULT;
|
|
Denis Kirjanov |
8656e8 |
goto out;
|
|
Denis Kirjanov |
8656e8 |
}
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
@@ -2682,6 +2681,7 @@ static int ehea_restart_qps(struct net_device *dev)
|
|
Denis Kirjanov |
8656e8 |
&dummy64, &dummy16, &dummy16);
|
|
Denis Kirjanov |
8656e8 |
if (hret != H_SUCCESS) {
|
|
Denis Kirjanov |
8656e8 |
netdev_err(dev, "modify_ehea_qp failed (1)\n");
|
|
Denis Kirjanov |
8656e8 |
+ ret = -EFAULT;
|
|
Denis Kirjanov |
8656e8 |
goto out;
|
|
Denis Kirjanov |
8656e8 |
}
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
@@ -2690,6 +2690,7 @@ static int ehea_restart_qps(struct net_device *dev)
|
|
Denis Kirjanov |
8656e8 |
cb0);
|
|
Denis Kirjanov |
8656e8 |
if (hret != H_SUCCESS) {
|
|
Denis Kirjanov |
8656e8 |
netdev_err(dev, "query_ehea_qp failed (2)\n");
|
|
Denis Kirjanov |
8656e8 |
+ ret = -EFAULT;
|
|
Denis Kirjanov |
8656e8 |
goto out;
|
|
Denis Kirjanov |
8656e8 |
}
|
|
Denis Kirjanov |
8656e8 |
|
|
Denis Kirjanov |
8656e8 |
--
|
|
Denis Kirjanov |
8656e8 |
2.16.4
|
|
Denis Kirjanov |
8656e8 |
|