No description
Find a file
Eric Dumazet a9ef8b2589 ipv4/tcp: do not use per netns ctl sockets
[ Upstream commit 37ba017dcc ]

TCP ipv4 uses per-cpu/per-netns ctl sockets in order to send
RST and some ACK packets (on behalf of TIMEWAIT sockets).

This adds memory and cpu costs, which do not seem needed.
Now typical servers have 256 or more cores, this adds considerable
tax to netns users.

tcp sockets are used from BH context, are not receiving packets,
and do not store any persistent state but the 'struct net' pointer
in order to be able to use IPv4 output functions.

Note that I attempted a related change in the past, that had
to be hot-fixed in commit bdbbb8527b ("ipv4: tcp: get rid of ugly unicast_sock")

This patch could very well surface old bugs, on layers not
taking care of sk->sk_kern_sock properly.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Stable-dep-of: 1e306ec49a ("tcp: fix possible sk_priority leak in tcp_v4_send_reset()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-05-30 12:57:52 +01:00
arch arm64: dts: qcom: msm8996: Add missing DWC3 quirks 2023-05-30 12:57:47 +01:00
block blk-crypto: make blk_crypto_evict_key() more robust 2023-05-17 11:47:32 +02:00
certs
crypto crypto: drbg - Only fail when jent is unavailable in FIPS mode 2023-05-17 11:47:50 +02:00
Documentation docs: futex: Fix kernel-doc references after code split-up preparation 2023-04-26 11:27:40 +02:00
drivers net: phy: dp83867: add w/a for packet errors seen with short cables 2023-05-30 12:57:51 +01:00
fs btrfs: fix space cache inconsistency after error loading it from disk 2023-05-30 12:57:51 +01:00
include ipv4/tcp: do not use per netns ctl sockets 2023-05-30 12:57:52 +01:00
init kbuild: check the minimum assembler version in Kconfig 2023-04-20 12:10:28 +02:00
io_uring io_uring: avoid null-ptr-deref in io_arm_poll_handler 2023-03-22 13:30:05 +01:00
ipc
kernel bpf: Annotate data races in bpf_local_storage 2023-05-30 12:57:48 +01:00
lib lib: cpu_rmap: Avoid use after free on rmap->obj array entries 2023-05-30 12:57:49 +01:00
LICENSES
mm mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock 2023-05-17 11:48:19 +02:00
net ipv4/tcp: do not use per netns ctl sockets 2023-05-30 12:57:52 +01:00
samples samples/bpf: Fix fout leak in hbm's run_bpf_prog 2023-05-30 12:57:49 +01:00
scripts recordmcount: Fix memory leaks in the uwrite function 2023-05-30 12:57:50 +01:00
security selinux: ensure av_permissions.h is built when needed 2023-05-17 11:47:37 +02:00
sound ALSA: hda/realtek: Apply HP B&O top speaker profile to Pavilion 15 2023-05-30 12:57:51 +01:00
tools cpupower: Make TSC read per CPU for Mperf monitor 2023-05-30 12:57:51 +01:00
usr
virt KVM: fix memoryleak in kvm_init() 2023-04-05 11:23:43 +02:00
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS audit: update the mailing list in MAINTAINERS 2023-02-25 11:55:04 +01:00
Makefile Linux 5.10.180 2023-05-17 11:48:20 +02:00
README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.