[I][PATCH 5/6] net/smc: Fix ENODATA tests in smc_nl_get_fback_stats()

frank.heimes at canonical.com frank.heimes at canonical.com
Mon Aug 16 07:05:06 UTC 2021


From: Dan Carpenter <dan.carpenter at oracle.com>

BugLink: https://bugs.launchpad.net/bugs/1853290

These functions return negative ENODATA but the minus sign was left out
in the tests.

Fixes: f0dd7bf5e330 ("net/smc: Add netlink support for SMC fallback statistics")
Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
Acked-by: Guvenc Gulce <guvenc at linux.ibm.com>
Signed-off-by: David S. Miller <davem at davemloft.net>
(cherry picked from commit 1a1100d53f12451d50bc5ebbc941517760912ab8)
Signed-off-by: Frank Heimes <frank.heimes at canonical.com>
---
 net/smc/smc_stats.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/net/smc/smc_stats.c b/net/smc/smc_stats.c
index 614013e3b574..e80e34f7ac15 100644
--- a/net/smc/smc_stats.c
+++ b/net/smc/smc_stats.c
@@ -393,17 +393,17 @@ int smc_nl_get_fback_stats(struct sk_buff *skb, struct netlink_callback *cb)
 			continue;
 		if (!skip_serv) {
 			rc_srv = smc_nl_get_fback_details(skb, cb, k, is_srv);
-			if (rc_srv && rc_srv != ENODATA)
+			if (rc_srv && rc_srv != -ENODATA)
 				break;
 		} else {
 			skip_serv = 0;
 		}
 		rc_clnt = smc_nl_get_fback_details(skb, cb, k, !is_srv);
-		if (rc_clnt && rc_clnt != ENODATA) {
+		if (rc_clnt && rc_clnt != -ENODATA) {
 			skip_serv = 1;
 			break;
 		}
-		if (rc_clnt == ENODATA && rc_srv == ENODATA)
+		if (rc_clnt == -ENODATA && rc_srv == -ENODATA)
 			break;
 	}
 	mutex_unlock(&net->smc.mutex_fback_rsn);
-- 
2.25.1




More information about the kernel-team mailing list