2021-06-04 01:35:49

by Zheng Yongjun

[permalink] [raw]
Subject: [PATCH net-next] tipc: Return the correct errno code

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

Signed-off-by: Zheng Yongjun <[email protected]>
---
net/tipc/link.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/net/tipc/link.c b/net/tipc/link.c
index c44b4bfaaee6..5b6181277cc5 100644
--- a/net/tipc/link.c
+++ b/net/tipc/link.c
@@ -912,7 +912,7 @@ static int link_schedule_user(struct tipc_link *l, struct tipc_msg *hdr)
skb = tipc_msg_create(SOCK_WAKEUP, 0, INT_H_SIZE, 0,
dnode, l->addr, dport, 0, 0);
if (!skb)
- return -ENOBUFS;
+ return -ENOMEM;
msg_set_dest_droppable(buf_msg(skb), true);
TIPC_SKB_CB(skb)->chain_imp = msg_importance(hdr);
skb_queue_tail(&l->wakeupq, skb);
@@ -1030,7 +1030,7 @@ void tipc_link_reset(struct tipc_link *l)
*
* Consumes the buffer chain.
* Messages at TIPC_SYSTEM_IMPORTANCE are always accepted
- * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS
+ * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS or -ENOMEM
*/
int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
struct sk_buff_head *xmitq)
@@ -1088,7 +1088,7 @@ int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
if (!_skb) {
kfree_skb(skb);
__skb_queue_purge(list);
- return -ENOBUFS;
+ return -ENOMEM;
}
__skb_queue_tail(transmq, skb);
tipc_link_set_skb_retransmit_time(skb, l);
--
2.25.1


2021-06-04 01:37:22

by Zheng Yongjun

[permalink] [raw]
Subject: 答复: [PATCH net-next] tipc: Return the corre ct errno code

Sorry, this patch is wrong, please ignore it, thanks :)

-----?ʼ?ԭ??-----
??????: zhengyongjun
????ʱ??: 2021??6??4?? 9:47
?ռ???: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
????: zhengyongjun <[email protected]>
????: [PATCH net-next] tipc: Return the correct errno code

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

Signed-off-by: Zheng Yongjun <[email protected]>
---
net/tipc/link.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/net/tipc/link.c b/net/tipc/link.c index c44b4bfaaee6..5b6181277cc5 100644
--- a/net/tipc/link.c
+++ b/net/tipc/link.c
@@ -912,7 +912,7 @@ static int link_schedule_user(struct tipc_link *l, struct tipc_msg *hdr)
skb = tipc_msg_create(SOCK_WAKEUP, 0, INT_H_SIZE, 0,
dnode, l->addr, dport, 0, 0);
if (!skb)
- return -ENOBUFS;
+ return -ENOMEM;
msg_set_dest_droppable(buf_msg(skb), true);
TIPC_SKB_CB(skb)->chain_imp = msg_importance(hdr);
skb_queue_tail(&l->wakeupq, skb);
@@ -1030,7 +1030,7 @@ void tipc_link_reset(struct tipc_link *l)
*
* Consumes the buffer chain.
* Messages at TIPC_SYSTEM_IMPORTANCE are always accepted
- * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS
+ * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS or
+ -ENOMEM
*/
int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
struct sk_buff_head *xmitq)
@@ -1088,7 +1088,7 @@ int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
if (!_skb) {
kfree_skb(skb);
__skb_queue_purge(list);
- return -ENOBUFS;
+ return -ENOMEM;
}
__skb_queue_tail(transmq, skb);
tipc_link_set_skb_retransmit_time(skb, l);
--
2.25.1

2021-06-04 21:22:21

by patchwork-bot+netdevbpf

[permalink] [raw]
Subject: Re: [PATCH net-next] tipc: Return the correct errno code

Hello:

This patch was applied to netdev/net-next.git (refs/heads/master):

On Fri, 4 Jun 2021 09:47:02 +0800 you wrote:
> When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.
>
> Signed-off-by: Zheng Yongjun <[email protected]>
> ---
> net/tipc/link.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)

Here is the summary with links:
- [net-next] tipc: Return the correct errno code
https://git.kernel.org/netdev/net-next/c/0efea3c649f0

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html


2021-06-08 02:25:32

by Yue Haibing

[permalink] [raw]
Subject: Re: [PATCH net-next] tipc: Return the correct errno code


On 2021/6/5 5:20, [email protected] wrote:
> Hello:
>
> This patch was applied to netdev/net-next.git (refs/heads/master):

This should not be applied.

tipc_node_xmit() now check -ENOBUFS rather than -ENOMEM.

Yongjun, maybe you fix this now?

>
> On Fri, 4 Jun 2021 09:47:02 +0800 you wrote:
>> When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.
>>
>> Signed-off-by: Zheng Yongjun <[email protected]>
>> ---
>> net/tipc/link.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> Here is the summary with links:
> - [net-next] tipc: Return the correct errno code
> https://git.kernel.org/netdev/net-next/c/0efea3c649f0
>
> You are awesome, thank you!
> --
> Deet-doot-dot, I am a bot.
> https://korg.docs.kernel.org/patchwork/pwbot.html
>
>
> .
>

2021-06-08 02:40:14

by Zheng Yongjun

[permalink] [raw]
Subject: 答复: [PATCH net-next] tipc: Return the cor rect errno code

Thanks for your advice, I will fix it right now :)

-----邮件原件-----
发件人: yuehaibing
发送时间: 2021年6月8日 10:16
收件人: [email protected]; zhengyongjun <[email protected]>
抄送: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
主题: Re: [PATCH net-next] tipc: Return the correct errno code


On 2021/6/5 5:20, [email protected] wrote:
> Hello:
>
> This patch was applied to netdev/net-next.git (refs/heads/master):

This should not be applied.

tipc_node_xmit() now check -ENOBUFS rather than -ENOMEM.

Yongjun, maybe you fix this now?

>
> On Fri, 4 Jun 2021 09:47:02 +0800 you wrote:
>> When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.
>>
>> Signed-off-by: Zheng Yongjun <[email protected]>
>> ---
>> net/tipc/link.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> Here is the summary with links:
> - [net-next] tipc: Return the correct errno code
> https://git.kernel.org/netdev/net-next/c/0efea3c649f0
>
> You are awesome, thank you!
> --
> Deet-doot-dot, I am a bot.
> https://korg.docs.kernel.org/patchwork/pwbot.html
>
>
> .
>

2021-06-08 02:43:12

by Zheng Yongjun

[permalink] [raw]
Subject: 答复: [PATCH net-next] tipc: Return the cor rect errno code

Sorry again, I introduce a bug to kernel, I will do it carefully later.

-----邮件原件-----
发件人: yuehaibing
发送时间: 2021年6月8日 10:16
收件人: [email protected]; zhengyongjun <[email protected]>
抄送: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
主题: Re: [PATCH net-next] tipc: Return the correct errno code


On 2021/6/5 5:20, [email protected] wrote:
> Hello:
>
> This patch was applied to netdev/net-next.git (refs/heads/master):

This should not be applied.

tipc_node_xmit() now check -ENOBUFS rather than -ENOMEM.

Yongjun, maybe you fix this now?

>
> On Fri, 4 Jun 2021 09:47:02 +0800 you wrote:
>> When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.
>>
>> Signed-off-by: Zheng Yongjun <[email protected]>
>> ---
>> net/tipc/link.c | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> Here is the summary with links:
> - [net-next] tipc: Return the correct errno code
> https://git.kernel.org/netdev/net-next/c/0efea3c649f0
>
> You are awesome, thank you!
> --
> Deet-doot-dot, I am a bot.
> https://korg.docs.kernel.org/patchwork/pwbot.html
>
>
> .
>

2021-08-02 08:03:50

by Hoang Huu Le

[permalink] [raw]
Subject: RE: [PATCH net-next] tipc: Return the correct errno code

Hi Zheng,

The patch was being merged by accident. Will have you planning to revert it?
We need to do ASAP since calling path tipc_node_xmit() -> tipc_link_xmit() broken as side effect.

Thanks,
hoang
> -----Original Message-----
> From: zhengyongjun <[email protected]>
> Sent: Friday, June 4, 2021 8:35 AM
> To: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; tipc-
> [email protected]; [email protected]
> Subject: 答复: [PATCH net-next] tipc: Return the correct errno code
>
> Sorry, this patch is wrong, please ignore it, thanks :)
>
> -----邮件原件-----
> 发件人: zhengyongjun
> 发送时间: 2021年6月4日 9:47
> 收件人: [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; tipc-
> [email protected]; [email protected]
> 抄送: zhengyongjun <[email protected]>
> 主题: [PATCH net-next] tipc: Return the correct errno code
>
> When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.
>
> Signed-off-by: Zheng Yongjun <[email protected]>
> ---
> net/tipc/link.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/net/tipc/link.c b/net/tipc/link.c index c44b4bfaaee6..5b6181277cc5 100644
> --- a/net/tipc/link.c
> +++ b/net/tipc/link.c
> @@ -912,7 +912,7 @@ static int link_schedule_user(struct tipc_link *l, struct tipc_msg *hdr)
> skb = tipc_msg_create(SOCK_WAKEUP, 0, INT_H_SIZE, 0,
> dnode, l->addr, dport, 0, 0);
> if (!skb)
> - return -ENOBUFS;
> + return -ENOMEM;
> msg_set_dest_droppable(buf_msg(skb), true);
> TIPC_SKB_CB(skb)->chain_imp = msg_importance(hdr);
> skb_queue_tail(&l->wakeupq, skb);
> @@ -1030,7 +1030,7 @@ void tipc_link_reset(struct tipc_link *l)
> *
> * Consumes the buffer chain.
> * Messages at TIPC_SYSTEM_IMPORTANCE are always accepted
> - * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS
> + * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS or
> + -ENOMEM
> */
> int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
> struct sk_buff_head *xmitq)
> @@ -1088,7 +1088,7 @@ int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
> if (!_skb) {
> kfree_skb(skb);
> __skb_queue_purge(list);
> - return -ENOBUFS;
> + return -ENOMEM;
> }
> __skb_queue_tail(transmq, skb);
> tipc_link_set_skb_retransmit_time(skb, l);
> --
> 2.25.1

2021-08-02 08:56:39

by Zheng Yongjun

[permalink] [raw]
Subject: 答复: [PATCH net-next] tipc: Return the cor rect errno code

Hi hoang,

I don't notice that patch has been merged, If you need me to send a revert patch, I will send it as soon as possible.
If you submit the revert patch by your team, it's also ok.

Thanks,
Zheng

-----邮件原件-----
发件人: Hoang Huu Le [mailto:[email protected]]
发送时间: 2021年8月2日 16:02
收件人: zhengyongjun <[email protected]>; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]; [email protected]
主题: RE: [PATCH net-next] tipc: Return the correct errno code

Hi Zheng,

The patch was being merged by accident. Will have you planning to revert it?
We need to do ASAP since calling path tipc_node_xmit() -> tipc_link_xmit() broken as side effect.

Thanks,
hoang
> -----Original Message-----
> From: zhengyongjun <[email protected]>
> Sent: Friday, June 4, 2021 8:35 AM
> To: [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; tipc-
> [email protected]; [email protected]
> Subject: 答复: [PATCH net-next] tipc: Return the correct errno code
>
> Sorry, this patch is wrong, please ignore it, thanks :)
>
> -----邮件原件-----
> 发件人: zhengyongjun
> 发送时间: 2021年6月4日 9:47
> 收件人: [email protected]; [email protected]; [email protected];
> [email protected]; [email protected]; tipc-
> [email protected]; [email protected]
> 抄送: zhengyongjun <[email protected]>
> 主题: [PATCH net-next] tipc: Return the correct errno code
>
> When kalloc or kmemdup failed, should return ENOMEM rather than ENOBUF.
>
> Signed-off-by: Zheng Yongjun <[email protected]>
> ---
> net/tipc/link.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/net/tipc/link.c b/net/tipc/link.c index
> c44b4bfaaee6..5b6181277cc5 100644
> --- a/net/tipc/link.c
> +++ b/net/tipc/link.c
> @@ -912,7 +912,7 @@ static int link_schedule_user(struct tipc_link *l, struct tipc_msg *hdr)
> skb = tipc_msg_create(SOCK_WAKEUP, 0, INT_H_SIZE, 0,
> dnode, l->addr, dport, 0, 0);
> if (!skb)
> - return -ENOBUFS;
> + return -ENOMEM;
> msg_set_dest_droppable(buf_msg(skb), true);
> TIPC_SKB_CB(skb)->chain_imp = msg_importance(hdr);
> skb_queue_tail(&l->wakeupq, skb);
> @@ -1030,7 +1030,7 @@ void tipc_link_reset(struct tipc_link *l)
> *
> * Consumes the buffer chain.
> * Messages at TIPC_SYSTEM_IMPORTANCE are always accepted
> - * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS
> + * Return: 0 if success, or errno: -ELINKCONG, -EMSGSIZE or -ENOBUFS
> + or -ENOMEM
> */
> int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
> struct sk_buff_head *xmitq)
> @@ -1088,7 +1088,7 @@ int tipc_link_xmit(struct tipc_link *l, struct sk_buff_head *list,
> if (!_skb) {
> kfree_skb(skb);
> __skb_queue_purge(list);
> - return -ENOBUFS;
> + return -ENOMEM;
> }
> __skb_queue_tail(transmq, skb);
> tipc_link_set_skb_retransmit_time(skb, l);
> --
> 2.25.1