Re: [PATCH v4] net: fully namespace net.core.{r,w}mem_{default,max} sysctls

From: Jakub Kicinski
Date: Tue Mar 25 2025 - 10:20:48 EST


On Tue, 25 Mar 2025 05:17:33 -0700 Danny Lin wrote:
> This builds on commit 19249c0724f2 ("net: make net.core.{r,w}mem_{default,max} namespaced")
> by adding support for writing the sysctls from within net namespaces,
> rather than only reading the values that were set in init_net. These are
> relatively commonly-used sysctls, so programs may try to set them without
> knowing that they're in a container. It can be surprising for such attempts
> to fail with EACCES.
>
> Unlike other net sysctls that were converted to namespaced ones, many
> systems have a sysctl.conf (or other configs) that globally write to
> net.core.rmem_default on boot and expect the value to propagate to
> containers, and programs running in containers may depend on the increased
> buffer sizes in order to work properly. This means that namespacing the
> sysctls and using the kernel default values in each new netns would break
> existing workloads.
>
> As a compromise, inherit the initial net.core.*mem_* values from the
> current process' netns when creating a new netns. This is not standard
> behavior for most netns sysctls, but it avoids breaking existing workloads.

You'll need to repost after the merge window:

https://lore.kernel.org/all/20250324075539.2b60eb42@xxxxxxxxxx/
--
pw-bot: defer