All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 net-next] Revert "net: group sk_backlog and sk_receive_queue"
@ 2025-09-29 18:21 Eric Dumazet
  2025-09-30  1:50 ` patchwork-bot+netdevbpf
  0 siblings, 1 reply; 2+ messages in thread
From: Eric Dumazet @ 2025-09-29 18:21 UTC (permalink / raw)
  To: David S . Miller, Jakub Kicinski, Paolo Abeni
  Cc: Simon Horman, Kuniyuki Iwashima, Willem de Bruijn, netdev,
	eric.dumazet, Eric Dumazet, kernel test robot, David Ahern

This reverts commit 4effb335b5dab08cb6e2c38d038910f8b527cfc9.

This was a benefit for UDP flood case, which was later greatly improved
with commits 6471658dc66c ("udp: use skb_attempt_defer_free()")
and b650bf0977d3 ("udp: remove busylock and add per NUMA queues").

Apparently blamed commit added a regression for RAW sockets, possibly
because they do not use the dual RX queue strategy that UDP has.

sock_queue_rcv_skb_reason() and RAW recvmsg() compete for sk_receive_buf
and sk_rmem_alloc changes, and them being in the same
cache line reduce performance.

Fixes: 4effb335b5da ("net: group sk_backlog and sk_receive_queue")
Reported-by: kernel test robot <oliver.sang@intel.com>
Closes: https://lore.kernel.org/oe-lkp/202509281326.f605b4eb-lkp@intel.com
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Willem de Bruijn <willemb@google.com>
Cc: David Ahern <dsahern@kernel.org>
Cc: Kuniyuki Iwashima <kuniyu@google.com>
---
v2: added missing SOB (Simon feedback)

 include/net/sock.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/net/sock.h b/include/net/sock.h
index 8c5b64f41ab72d2a28c066c2a5698eaff7973918..60bcb13f045c3144609908a36960528b33e4f71c 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
@@ -395,6 +395,7 @@ struct sock {
 
 	atomic_t		sk_drops;
 	__s32			sk_peek_off;
+	struct sk_buff_head	sk_error_queue;
 	struct sk_buff_head	sk_receive_queue;
 	/*
 	 * The backlog queue is special, it is always used with
@@ -412,7 +413,6 @@ struct sock {
 	} sk_backlog;
 #define sk_rmem_alloc sk_backlog.rmem_alloc
 
-	struct sk_buff_head	sk_error_queue;
 	__cacheline_group_end(sock_write_rx);
 
 	__cacheline_group_begin(sock_read_rx);
-- 
2.51.0.570.gb178f27e6d-goog


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

* Re: [PATCH v2 net-next] Revert "net: group sk_backlog and sk_receive_queue"
  2025-09-29 18:21 [PATCH v2 net-next] Revert "net: group sk_backlog and sk_receive_queue" Eric Dumazet
@ 2025-09-30  1:50 ` patchwork-bot+netdevbpf
  0 siblings, 0 replies; 2+ messages in thread
From: patchwork-bot+netdevbpf @ 2025-09-30  1:50 UTC (permalink / raw)
  To: Eric Dumazet
  Cc: davem, kuba, pabeni, horms, kuniyu, willemb, netdev, eric.dumazet,
	oliver.sang, dsahern

Hello:

This patch was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:

On Mon, 29 Sep 2025 18:21:12 +0000 you wrote:
> This reverts commit 4effb335b5dab08cb6e2c38d038910f8b527cfc9.
> 
> This was a benefit for UDP flood case, which was later greatly improved
> with commits 6471658dc66c ("udp: use skb_attempt_defer_free()")
> and b650bf0977d3 ("udp: remove busylock and add per NUMA queues").
> 
> Apparently blamed commit added a regression for RAW sockets, possibly
> because they do not use the dual RX queue strategy that UDP has.
> 
> [...]

Here is the summary with links:
  - [v2,net-next] Revert "net: group sk_backlog and sk_receive_queue"
    https://git.kernel.org/netdev/net-next/c/7d452516b67a

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



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

end of thread, other threads:[~2025-09-30  1:50 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-29 18:21 [PATCH v2 net-next] Revert "net: group sk_backlog and sk_receive_queue" Eric Dumazet
2025-09-30  1:50 ` patchwork-bot+netdevbpf

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.