onload icon indicating copy to clipboard operation
onload copied to clipboard

Please add the feature of handling transparently multiple threads binding to multiple RSS queues on non-Solarflare NiCs

Open shirshen12 opened this issue 2 years ago • 7 comments

Hello,

Please add the feature of where Onload in AF_XDP mode can transparently create multiple stacks bound to multiple RSS queues for multiple threads transparently while maintaining all the networking semantics like SO_REUSEPORT etc.,

This issue is already in https://github.com/Xilinx-CNS/onload/issues/70, in detail.

Any help is appreciated.

shirshen12 avatar Apr 02 '22 04:04 shirshen12

Hello @maciejj-xilinx can you take a look at it ?

shirshen12 avatar Apr 06 '22 16:04 shirshen12

I had another look into the specifics of the implementation. Currently, it seems there are two relatively contained changes needed:

  • enable use of RSS/Clustering for AF_XDP (it is disabled currently)
  • suppress use of hardware for non-RSS/non-Clustered stacks as currently only single stack per channel can be accelerated and network driver channels need to be saved for the cluster

It looks just these two should be enough to enable both passive and active side RSS scalable filters. The active side would depend on configurable Toeplitz RSS hashing on the Interface. It looks both Intel and Mellanox NICs allow this.

maciejj-xilinx avatar Apr 11 '22 09:04 maciejj-xilinx

sounds good @maciejj-xilinx . How do we enable, RSS/Clustering for AF_XDP ?

shirshen12 avatar Apr 11 '22 15:04 shirshen12

These two points list required code changes. I reckon relatively simple ones though. This is on my AF_XDP TODO list.

maciejj-xilinx avatar Apr 13 '22 11:04 maciejj-xilinx

sounds good @maciejj-xilinx

shirshen12 avatar Apr 13 '22 15:04 shirshen12

Hi @maciejj-xilinx any progress on the patch ?

shirshen12 avatar Apr 26 '22 05:04 shirshen12

Hi @maciejj-xilinx any progress on the patch ?

shirshen12 avatar May 17 '22 16:05 shirshen12