Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

tcp: move sysctl_tcp_l3mdev_accept to netns_ipv4_read_rx

sysctl_tcp_l3mdev_accept is read from TCP receive fast path from
tcp_v6_early_demux(),
__inet6_lookup_established,
inet_request_bound_dev_if().

Move it to netns_ipv4_read_rx.

Remove the '#ifdef CONFIG_NET_L3_MASTER_DEV' that was guarding
its definition.

Note this adds a hole of three bytes that could be filled later.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Cc: Wei Wang <weiwan@google.com>
Cc: Coco Li <lixiaoyan@google.com>
Link: https://patch.msgid.link/20241010034100.320832-1-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>

authored by

Eric Dumazet and committed by
Jakub Kicinski
d677aebd 7e5b547c

+6 -5
+1 -1
Documentation/networking/net_cachelines/netns_ipv4_sysctl.rst
··· 59 59 u8 sysctl_nexthop_compat_mode 60 60 u8 sysctl_fwmark_reflect 61 61 u8 sysctl_tcp_fwmark_accept 62 - u8 sysctl_tcp_l3mdev_accept 62 + u8 sysctl_tcp_l3mdev_accept read_mostly __inet6_lookup_established/inet_request_bound_dev_if 63 63 u8 sysctl_tcp_mtu_probing 64 64 int sysctl_tcp_mtu_probe_floor 65 65 int sysctl_tcp_base_mss
+2 -3
include/net/netns/ipv4.h
··· 76 76 __cacheline_group_begin(netns_ipv4_read_rx); 77 77 u8 sysctl_ip_early_demux; 78 78 u8 sysctl_tcp_early_demux; 79 + u8 sysctl_tcp_l3mdev_accept; 80 + /* 3 bytes hole, try to pack */ 79 81 int sysctl_tcp_reordering; 80 82 int sysctl_tcp_rmem[3]; 81 83 __cacheline_group_end(netns_ipv4_read_rx); ··· 153 151 154 152 u8 sysctl_fwmark_reflect; 155 153 u8 sysctl_tcp_fwmark_accept; 156 - #ifdef CONFIG_NET_L3_MASTER_DEV 157 - u8 sysctl_tcp_l3mdev_accept; 158 - #endif 159 154 u8 sysctl_tcp_mtu_probing; 160 155 int sysctl_tcp_mtu_probe_floor; 161 156 int sysctl_tcp_base_mss;
+3 -1
net/core/net_namespace.c
··· 1160 1160 CACHELINE_ASSERT_GROUP_MEMBER(struct netns_ipv4, netns_ipv4_read_rx, 1161 1161 sysctl_tcp_early_demux); 1162 1162 CACHELINE_ASSERT_GROUP_MEMBER(struct netns_ipv4, netns_ipv4_read_rx, 1163 + sysctl_tcp_l3mdev_accept); 1164 + CACHELINE_ASSERT_GROUP_MEMBER(struct netns_ipv4, netns_ipv4_read_rx, 1163 1165 sysctl_tcp_reordering); 1164 1166 CACHELINE_ASSERT_GROUP_MEMBER(struct netns_ipv4, netns_ipv4_read_rx, 1165 1167 sysctl_tcp_rmem); 1166 - CACHELINE_ASSERT_GROUP_SIZE(struct netns_ipv4, netns_ipv4_read_rx, 18); 1168 + CACHELINE_ASSERT_GROUP_SIZE(struct netns_ipv4, netns_ipv4_read_rx, 22); 1167 1169 } 1168 1170 #endif 1169 1171