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
| ||
|
Message-ID: <a2a1164f-1492-43d1-9667-5917d0ececcb@intel.com> Date: Sun, 29 Oct 2023 10:59:42 -0600 From: Ahmed Zaki <ahmed.zaki@...el.com> To: Gal Pressman <gal@...dia.com>, Jakub Kicinski <kuba@...nel.org>, "Alexander H Duyck" <alexander.duyck@...il.com> CC: <mkubecek@...e.cz>, <andrew@...n.ch>, <willemdebruijn.kernel@...il.com>, Wojciech Drewek <wojciech.drewek@...el.com>, <corbet@....net>, <netdev@...r.kernel.org>, <linux-doc@...r.kernel.org>, <jesse.brandeburg@...el.com>, <edumazet@...gle.com>, <anthony.l.nguyen@...el.com>, <horms@...nel.org>, <vladimir.oltean@....com>, Jacob Keller <jacob.e.keller@...el.com>, <intel-wired-lan@...ts.osuosl.org>, <pabeni@...hat.com>, <davem@...emloft.net> Subject: Re: [Intel-wired-lan] [PATCH net-next v4 1/6] net: ethtool: allow symmetric-xor RSS hash for any flow type On 2023-10-29 06:48, Gal Pressman wrote: > On 29/10/2023 14:42, Ahmed Zaki wrote: >> >> >> On 2023-10-29 06:25, Gal Pressman wrote: >>> On 21/10/2023 3:00, Ahmed Zaki wrote: >>>> >>>> >>>> On 2023-10-20 17:49, Jakub Kicinski wrote: >>>>> On Fri, 20 Oct 2023 17:14:11 -0600 Ahmed Zaki wrote: >>>>>> I replied to that here: >>>>>> >>>>>> https://lore.kernel.org/all/afb4a06f-cfba-47ba-adb3-09bea7cb5f00@intel.com/ >>>>>> >>>>>> I am kind of confused now so please bear with me. ethtool either sends >>>>>> "ethtool_rxfh" or "ethtool_rxnfc". AFAIK "ethtool_rxfh" is the >>>>>> interface >>>>>> for "ethtool -X" which is used to set the RSS algorithm. But we >>>>>> kind of >>>>>> agreed to go with "ethtool -U|-N" for symmetric-xor, and that uses >>>>>> "ethtool_rxnfc" (as implemented in this series). >>>>> >>>>> I have no strong preference. Sounds like Alex prefers to keep it closer >>>>> to algo, which is "ethtool_rxfh". >>>>> >>>>>> Do you mean use "ethtool_rxfh" instead of "ethtool_rxnfc"? how would >>>>>> that work on the ethtool user interface? >>>>> >>>>> I don't know what you're asking of us. If you find the code to >>>>> confusing >>>>> maybe someone at Intel can help you :| >>>> >>>> The code is straightforward. I am confused by the requirements: don't >>>> add a new algorithm but use "ethtool_rxfh". >>>> >>>> I'll see if I can get more help, may be I am missing something. >>>> >>> >>> What was the decision here? >>> Is this going to be exposed through ethtool -N or -X? >> >> I am working on a new version that uses "ethtool_rxfh" to set the >> symmetric-xor. The user will set per-device via: >> >> ethtool -X eth0 hfunc toeplitz symmetric-xor >> >> then specify the per-flow type RSS fields as usual: >> >> ethtool -N|-U eth0 rx-flow-hash <flow_type> s|d|f|n >> >> The downside is that all flow-types will have to be either symmetric or >> asymmetric. > > Why are we making the interface less flexible than it can be with -N? Alexander Duyck prefers to implement the "symmetric-xor" interface as an algorithm or extension (please refer to previous messages), but ethtool does not provide flowtype/RSS fields setting via "-X". The above was the best solution that we (at Intel) could think of. Another solution would be to add a similar flowtype interface to "-X": ethtool -X eth0 hfunc toeplitz [symmetric-xor rx-flow-hash <flow_type>] which will allow the user to set "symmetric-xor" per flow-type. IMHO such approach is confusing; consider if the user sets: ethtool -X eth0 ALG-1 symmetric-xor rx-flow-hash tcp4 and then: ethtool -X eth0 ALG-2 should we switch tcp4 to ALG-2? Also, just the idea of replicating "rx-flow-hash" did not sound good overall to me. Anyway, we thought that, if we are using "-X", then limiting all flow-types to whatever is set with "-X" is cleaner and works best with the current ethtool design. Any other suggestions are welcome of course.
Powered by blists - more mailing lists