Skip to contentSkip to conversation

Patch "net: kcm: fix memory leak in kcm_sendmsg" has been added to the 5.12-stable tree

DISCUSSION Pavel Skripkin 3 participants 3 messages Jun 8, 2021 1 message not in the archive Stable branch

lore
Share & tools
lore
#1 lore raw
In reply to a message not in the archive
Quoted 51 lines · On Tue, 08 Jun 2021 14:32:23 +0200 <[email protected]> wrote:

This is a note to let you know that I've just added the patch titled

net: kcm: fix memory leak in kcm_sendmsg

to the 5.12-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
net-kcm-fix-memory-leak-in-kcm_sendmsg.patch
and it can be found in the queue-5.12 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

From c47cc304990a2813995b1a92bbc11d0bb9a19ea9 Mon Sep 17 00:00:00 2001
From: Pavel Skripkin <[email protected]>
Date: Wed, 2 Jun 2021 22:26:40 +0300
Subject: net: kcm: fix memory leak in kcm_sendmsg

From: Pavel Skripkin <[email protected]>

commit c47cc304990a2813995b1a92bbc11d0bb9a19ea9 upstream.

Syzbot reported memory leak in kcm_sendmsg()[1]. The problem was in non-freed frag_list in case of error.

In the while loop:

	if (head == skb)
		skb_shinfo(head)->frag_list = tskb;
	else
		skb->next = tskb;

frag_list filled with skbs, but nothing was freeing them.

backtrace:

  [<0000000094c02615>] __alloc_skb+0x5e/0x250 net/core/skbuff.c:198
  [<00000000e5386cbd>] alloc_skb include/linux/skbuff.h:1083 [inline]
  [<00000000e5386cbd>] kcm_sendmsg+0x3b6/0xa50 net/kcm/kcmsock.c:967

[1] [<00000000f1613a8a>] sock_sendmsg_nosec net/socket.c:652 [inline] [<00000000f1613a8a>] sock_sendmsg+0x4c/0x60 net/socket.c:672

Reported-and-tested-by:
[email protected] Fixes:
ab7ac4eb9832 ("kcm: Kernel Connection Multiplexor module") Cc:
[email protected] Signed-off-by: Pavel Skripkin <[email protected]> Signed-off-by: David S. Miller <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]> ---

Quoted 3 lines
 net/kcm/kcmsock.c |    5 +++++
 1 file changed, 5 insertions(+)

Hi, Greg!

I CCed stable. This patch is broken and I've already sent a revert for this.

https://git.kernel.org/netdev/net/c/a47c397bb29f

Please, don't add this to stable trees. Im sorry

With regards,
Pavel Skripkin

maintainer
#2 lore raw
Quoted 58 lines · Pavel Skripkin
Quoted 51 lines · On Tue, 08 Jun 2021 14:32:23 +0200 <[email protected]> wrote:

This is a note to let you know that I've just added the patch titled

net: kcm: fix memory leak in kcm_sendmsg

to the 5.12-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
net-kcm-fix-memory-leak-in-kcm_sendmsg.patch
and it can be found in the queue-5.12 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

From c47cc304990a2813995b1a92bbc11d0bb9a19ea9 Mon Sep 17 00:00:00 2001
From: Pavel Skripkin <[email protected]>
Date: Wed, 2 Jun 2021 22:26:40 +0300
Subject: net: kcm: fix memory leak in kcm_sendmsg

From: Pavel Skripkin <[email protected]>

commit c47cc304990a2813995b1a92bbc11d0bb9a19ea9 upstream.

Syzbot reported memory leak in kcm_sendmsg()[1]. The problem was in non-freed frag_list in case of error.

In the while loop:

	if (head == skb)
		skb_shinfo(head)->frag_list = tskb;
	else
		skb->next = tskb;

frag_list filled with skbs, but nothing was freeing them.

backtrace:

  [<0000000094c02615>] __alloc_skb+0x5e/0x250 net/core/skbuff.c:198
  [<00000000e5386cbd>] alloc_skb include/linux/skbuff.h:1083 [inline]
  [<00000000e5386cbd>] kcm_sendmsg+0x3b6/0xa50 net/kcm/kcmsock.c:967

[1] [<00000000f1613a8a>] sock_sendmsg_nosec net/socket.c:652 [inline] [<00000000f1613a8a>] sock_sendmsg+0x4c/0x60 net/socket.c:672

Reported-and-tested-by:
[email protected] Fixes:
ab7ac4eb9832 ("kcm: Kernel Connection Multiplexor module") Cc:
[email protected] Signed-off-by: Pavel Skripkin <[email protected]> Signed-off-by: David S. Miller <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]> ---

Quoted 3 lines
 net/kcm/kcmsock.c |    5 +++++
 1 file changed, 5 insertions(+)
Quoted 8 lines

Hi, Greg!

I CCed stable. This patch is broken and I've already sent a revert for this.

https://git.kernel.org/netdev/net/c/a47c397bb29f

Please, don't add this to stable trees. Im sorry

Now dropped from everywhere, thanks for letting me know.

greg k-h

maintainer
#3 lore raw
In reply to Pavel Skripkin
Quoted 58 lines · Pavel Skripkin
Quoted 51 lines · On Tue, 08 Jun 2021 14:32:23 +0200 <[email protected]> wrote:

This is a note to let you know that I've just added the patch titled

net: kcm: fix memory leak in kcm_sendmsg

to the 5.12-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
net-kcm-fix-memory-leak-in-kcm_sendmsg.patch
and it can be found in the queue-5.12 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

From c47cc304990a2813995b1a92bbc11d0bb9a19ea9 Mon Sep 17 00:00:00 2001
From: Pavel Skripkin <[email protected]>
Date: Wed, 2 Jun 2021 22:26:40 +0300
Subject: net: kcm: fix memory leak in kcm_sendmsg

From: Pavel Skripkin <[email protected]>

commit c47cc304990a2813995b1a92bbc11d0bb9a19ea9 upstream.

Syzbot reported memory leak in kcm_sendmsg()[1]. The problem was in non-freed frag_list in case of error.

In the while loop:

	if (head == skb)
		skb_shinfo(head)->frag_list = tskb;
	else
		skb->next = tskb;

frag_list filled with skbs, but nothing was freeing them.

backtrace:

  [<0000000094c02615>] __alloc_skb+0x5e/0x250 net/core/skbuff.c:198
  [<00000000e5386cbd>] alloc_skb include/linux/skbuff.h:1083 [inline]
  [<00000000e5386cbd>] kcm_sendmsg+0x3b6/0xa50 net/kcm/kcmsock.c:967

[1] [<00000000f1613a8a>] sock_sendmsg_nosec net/socket.c:652 [inline] [<00000000f1613a8a>] sock_sendmsg+0x4c/0x60 net/socket.c:672

Reported-and-tested-by:
[email protected] Fixes:
ab7ac4eb9832 ("kcm: Kernel Connection Multiplexor module") Cc:
[email protected] Signed-off-by: Pavel Skripkin <[email protected]> Signed-off-by: David S. Miller <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]> ---

Quoted 3 lines
 net/kcm/kcmsock.c |    5 +++++
 1 file changed, 5 insertions(+)
Quoted 8 lines

Hi, Greg!

I CCed stable. This patch is broken and I've already sent a revert for this.

https://git.kernel.org/netdev/net/c/a47c397bb29f

Please, don't add this to stable trees. Im sorry

I've dropped it, thanks!

Signature · 2 lines
Thanks,
Sasha