Linux kernel -stable discussions
 help / color / mirror / Atom feed
* Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y
@ 2024-06-30 12:55 Wen Gu
  2024-07-02  2:07 ` Wen Gu
  2024-07-02  8:23 ` Greg KH
  0 siblings, 2 replies; 5+ messages in thread
From: Wen Gu @ 2024-06-30 12:55 UTC (permalink / raw)
  To: stable; +Cc: alikernel-developer, Wen Gu, Dust Li, D. Wythe, mqaio

Hi stable team,

Could you please backport [1] to linux-5.10.y?

I noticed a regression caused by [2], which was merged to linux-5.10.y since v5.10.80.

After sock_map_unhash() helper was removed in [2], sock elems added to the bpf sock map
via sock_hash_update_common() cannot be removed if they are in the icsk_accept_queue
of the listener sock. Since they have not been accept()ed, they cannot be removed via
sock_map_close()->sock_map_remove_links() either.

It can be reproduced in network test with short-lived connections. If the server is
stopped during the test, there is a probability that some sock elems will remain in
the bpf sock map.

And with [1], the sock_map_destroy() helper is introduced to invoke sock_map_remove_links()
when inet_csk_listen_stop()->inet_child_forget()->inet_csk_destroy_sock(), to remove the
sock elems from the bpf sock map in such situation.

[1] d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues")
(link: https://lore.kernel.org/all/20220524075311.649153-1-wangyufen@huawei.com/)
[2] 8b5c98a67c1b ("bpf, sockmap: Remove unhash handler for BPF sockmap usage")
(link: https://lore.kernel.org/all/20211103204736.248403-3-john.fastabend@gmail.com/)

Thanks!
Wen Gu

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y
  2024-06-30 12:55 Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y Wen Gu
@ 2024-07-02  2:07 ` Wen Gu
  2024-07-02  8:22   ` Greg KH
  2024-07-02  8:23 ` Greg KH
  1 sibling, 1 reply; 5+ messages in thread
From: Wen Gu @ 2024-07-02  2:07 UTC (permalink / raw)
  To: stable; +Cc: alikernel-developer, Dust Li, D. Wythe, mqaio



On 2024/6/30 20:55, Wen Gu wrote:
> Hi stable team,
> 
> Could you please backport [1] to linux-5.10.y?
> 
> I noticed a regression caused by [2], which was merged to linux-5.10.y since v5.10.80.
> 
> After sock_map_unhash() helper was removed in [2], sock elems added to the bpf sock map
> via sock_hash_update_common() cannot be removed if they are in the icsk_accept_queue
> of the listener sock. Since they have not been accept()ed, they cannot be removed via
> sock_map_close()->sock_map_remove_links() either.
> 
> It can be reproduced in network test with short-lived connections. If the server is
> stopped during the test, there is a probability that some sock elems will remain in
> the bpf sock map.
> 
> And with [1], the sock_map_destroy() helper is introduced to invoke sock_map_remove_links()
> when inet_csk_listen_stop()->inet_child_forget()->inet_csk_destroy_sock(), to remove the
> sock elems from the bpf sock map in such situation.
> 
> [1] d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues")
> (link: https://lore.kernel.org/all/20220524075311.649153-1-wangyufen@huawei.com/)
> [2] 8b5c98a67c1b ("bpf, sockmap: Remove unhash handler for BPF sockmap usage")
> (link: https://lore.kernel.org/all/20211103204736.248403-3-john.fastabend@gmail.com/)
> 
> Thanks!
> Wen Gu

Hi stable team,

Just want to confirm that the backport of this patch is consistent with the stable tree rules
as I thought. And is there any other information I need to provide? :)

Thanks for your efforts and time.

Regards.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y
  2024-07-02  2:07 ` Wen Gu
@ 2024-07-02  8:22   ` Greg KH
  2024-07-02 12:55     ` Wen Gu
  0 siblings, 1 reply; 5+ messages in thread
From: Greg KH @ 2024-07-02  8:22 UTC (permalink / raw)
  To: Wen Gu; +Cc: stable, alikernel-developer, Dust Li, D. Wythe, mqaio

On Tue, Jul 02, 2024 at 10:07:56AM +0800, Wen Gu wrote:
> 
> 
> On 2024/6/30 20:55, Wen Gu wrote:
> > Hi stable team,
> > 
> > Could you please backport [1] to linux-5.10.y?
> > 
> > I noticed a regression caused by [2], which was merged to linux-5.10.y since v5.10.80.
> > 
> > After sock_map_unhash() helper was removed in [2], sock elems added to the bpf sock map
> > via sock_hash_update_common() cannot be removed if they are in the icsk_accept_queue
> > of the listener sock. Since they have not been accept()ed, they cannot be removed via
> > sock_map_close()->sock_map_remove_links() either.
> > 
> > It can be reproduced in network test with short-lived connections. If the server is
> > stopped during the test, there is a probability that some sock elems will remain in
> > the bpf sock map.
> > 
> > And with [1], the sock_map_destroy() helper is introduced to invoke sock_map_remove_links()
> > when inet_csk_listen_stop()->inet_child_forget()->inet_csk_destroy_sock(), to remove the
> > sock elems from the bpf sock map in such situation.
> > 
> > [1] d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues")
> > (link: https://lore.kernel.org/all/20220524075311.649153-1-wangyufen@huawei.com/)
> > [2] 8b5c98a67c1b ("bpf, sockmap: Remove unhash handler for BPF sockmap usage")
> > (link: https://lore.kernel.org/all/20211103204736.248403-3-john.fastabend@gmail.com/)
> > 
> > Thanks!
> > Wen Gu
> 
> Hi stable team,
> 
> Just want to confirm that the backport of this patch is consistent with the stable tree rules
> as I thought. And is there any other information I need to provide? :)

Please relax, you sent this on Sunday and asked about it on Tuesday,
barely 1 day later?

greg k-h

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y
  2024-06-30 12:55 Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y Wen Gu
  2024-07-02  2:07 ` Wen Gu
@ 2024-07-02  8:23 ` Greg KH
  1 sibling, 0 replies; 5+ messages in thread
From: Greg KH @ 2024-07-02  8:23 UTC (permalink / raw)
  To: Wen Gu; +Cc: stable, alikernel-developer, Dust Li, D. Wythe, mqaio

On Sun, Jun 30, 2024 at 08:55:56PM +0800, Wen Gu wrote:
> Hi stable team,
> 
> Could you please backport [1] to linux-5.10.y?
> 
> I noticed a regression caused by [2], which was merged to linux-5.10.y since v5.10.80.
> 
> After sock_map_unhash() helper was removed in [2], sock elems added to the bpf sock map
> via sock_hash_update_common() cannot be removed if they are in the icsk_accept_queue
> of the listener sock. Since they have not been accept()ed, they cannot be removed via
> sock_map_close()->sock_map_remove_links() either.
> 
> It can be reproduced in network test with short-lived connections. If the server is
> stopped during the test, there is a probability that some sock elems will remain in
> the bpf sock map.
> 
> And with [1], the sock_map_destroy() helper is introduced to invoke sock_map_remove_links()
> when inet_csk_listen_stop()->inet_child_forget()->inet_csk_destroy_sock(), to remove the
> sock elems from the bpf sock map in such situation.
> 
> [1] d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues")
> (link: https://lore.kernel.org/all/20220524075311.649153-1-wangyufen@huawei.com/)
> [2] 8b5c98a67c1b ("bpf, sockmap: Remove unhash handler for BPF sockmap usage")
> (link: https://lore.kernel.org/all/20211103204736.248403-3-john.fastabend@gmail.com/)

As there is fuzz with this patch, please send a backported, and tested,
version of this patch so we can include it and properly show who it was
requested from.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y
  2024-07-02  8:22   ` Greg KH
@ 2024-07-02 12:55     ` Wen Gu
  0 siblings, 0 replies; 5+ messages in thread
From: Wen Gu @ 2024-07-02 12:55 UTC (permalink / raw)
  To: Greg KH; +Cc: stable, alikernel-developer, Dust Li, D. Wythe, mqaio



On 2024/7/2 16:22, Greg KH wrote:
> On Tue, Jul 02, 2024 at 10:07:56AM +0800, Wen Gu wrote:
>>
>>
>> On 2024/6/30 20:55, Wen Gu wrote:
>>> Hi stable team,
>>>
>>> Could you please backport [1] to linux-5.10.y?
>>>
>>> I noticed a regression caused by [2], which was merged to linux-5.10.y since v5.10.80.
>>>
>>> After sock_map_unhash() helper was removed in [2], sock elems added to the bpf sock map
>>> via sock_hash_update_common() cannot be removed if they are in the icsk_accept_queue
>>> of the listener sock. Since they have not been accept()ed, they cannot be removed via
>>> sock_map_close()->sock_map_remove_links() either.
>>>
>>> It can be reproduced in network test with short-lived connections. If the server is
>>> stopped during the test, there is a probability that some sock elems will remain in
>>> the bpf sock map.
>>>
>>> And with [1], the sock_map_destroy() helper is introduced to invoke sock_map_remove_links()
>>> when inet_csk_listen_stop()->inet_child_forget()->inet_csk_destroy_sock(), to remove the
>>> sock elems from the bpf sock map in such situation.
>>>
>>> [1] d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues")
>>> (link: https://lore.kernel.org/all/20220524075311.649153-1-wangyufen@huawei.com/)
>>> [2] 8b5c98a67c1b ("bpf, sockmap: Remove unhash handler for BPF sockmap usage")
>>> (link: https://lore.kernel.org/all/20211103204736.248403-3-john.fastabend@gmail.com/)
>>>
>>> Thanks!
>>> Wen Gu
>>
>> Hi stable team,
>>
>> Just want to confirm that the backport of this patch is consistent with the stable tree rules
>> as I thought. And is there any other information I need to provide? :)
> 
> Please relax, you sent this on Sunday and asked about it on Tuesday,
> barely 1 day later?
> 

Sure, there's no intention to rush, just confirming this backport requirement is reasonable. Sorry for the noise.

Thanks.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-07-02 12:55 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-30 12:55 Please backport d8616ee2affc ("bpf, sockmap: Fix sk->sk_forward_alloc warn_on in sk_stream_kill_queues") to linux-5.10.y Wen Gu
2024-07-02  2:07 ` Wen Gu
2024-07-02  8:22   ` Greg KH
2024-07-02 12:55     ` Wen Gu
2024-07-02  8:23 ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox