lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250428113845.543ca2b8@kernel.org>
Date: Mon, 28 Apr 2025 11:38:45 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Joe Damato <jdamato@...tly.com>
Cc: Willem de Bruijn <willemdebruijn.kernel@...il.com>, Samiullah Khawaja
 <skhawaja@...gle.com>, "David S . Miller" <davem@...emloft.net>, Eric
 Dumazet <edumazet@...gle.com>, Paolo Abeni <pabeni@...hat.com>,
 almasrymina@...gle.com, willemb@...gle.com, mkarsten@...terloo.ca,
 netdev@...r.kernel.org
Subject: Re: [PATCH net-next v5] Add support to set napi threaded for
 individual napi

On Mon, 28 Apr 2025 11:12:34 -0700 Joe Damato wrote:
> On Sat, Apr 26, 2025 at 10:41:10AM -0400, Willem de Bruijn wrote:
> > > Anyway: I have a preference for consistency  
> > 
> > +1
> > 
> > I don't think either solution is vastly better than the other, as
> > long as it is the path of least surprise. Different behavior for
> > different options breaks that rule.  
> 
> I agree and my feedback on the previous revision was that all NAPI
> config settings should work similarly. Whether that's what I already
> implemented for defer-hard-irq/gro-flush-timeout or something else I
> don't really have a strong preference.
> 
> Implementing something other than what already exists for
> defer-hard-irq/gro-flush-timeout, though, would probably mean you'll
> need to update how both of those work, for consistency.

Nobody will disagree with consistency being good. The question is how
broadly you define the scope :) If you say 'all settings within
napi-set' that's one level of consistency, if you say 'all netdev
netlink' then the picture is less clear.

> > This also reminds me of /proc/sys/net/ipv4/conf/{all, default, .. }
> > API. Which confuses me to this day.

Indeed. That scheme has the additional burden of not being consistently 
enforced :/ So I'm trying to lay down some rules (in the doc linked
upthread).

The concern I have with the write all semantics is what happens when
we delegate the control over a queue / NAPI to some application or
container. Is the expectation that some user space component prevents
the global settings from being re-applied when applications using
dedicated queues / NAPIs are running?

Second, more minor concern is that we expose all settings on all
sub-objects which I find slightly less clear for the admin. It's much
harder to tell at a glance which settings are overrides and which one
was the default.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ