[PATCH net-next] net: ipv4: Return the correct errno code

Subsystems: networking [general], networking [ipv4/ipv6], the rest

STALE2004d

2 messages, 2 authors, 2021-02-06 · open the first message on its own page

[PATCH net-next] net: ipv4: Return the correct errno code

From: Zheng Yongjun <hidden>
Date: 2021-02-04 07:27:28

When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.

Signed-off-by: Zheng Yongjun <redacted>
---
 net/ipv4/devinet.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
index 123a6d39438f..fa586e915621 100644
--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -2582,7 +2582,7 @@ static int __devinet_sysctl_register(struct net *net, char *dev_name,
 free:
 	kfree(t);
 out:
-	return -ENOBUFS;
+	return -ENOMEM;
 }
 
 static void __devinet_sysctl_unregister(struct net *net,
-- 
2.22.0

Re: [PATCH net-next] net: ipv4: Return the correct errno code

From: Jakub Kicinski <kuba@kernel.org>
Date: 2021-02-06 19:20:55

On Thu, 4 Feb 2021 15:26:57 +0800 Zheng Yongjun wrote:
quoted hunk
When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.

Signed-off-by: Zheng Yongjun <redacted>
---
 net/ipv4/devinet.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
index 123a6d39438f..fa586e915621 100644
--- a/net/ipv4/devinet.c
+++ b/net/ipv4/devinet.c
@@ -2582,7 +2582,7 @@ static int __devinet_sysctl_register(struct net *net, char *dev_name,
 free:
 	kfree(t);
 out:
-	return -ENOBUFS;
+	return -ENOMEM;
But this path also gets hit when registration fails.
Are you sure registration also only fails when there is no memory?
 }
 
 static void __devinet_sysctl_unregister(struct net *net,

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help