Hi all: At 2023-11-13 21:19:14, "Konstantin Ananyev" wrote: > > >>> Now the port Rx mq_mode had been set to RTE_ETH_MQ_RX_RSS >>> by default, but some hw and/or virtual interface does not >>> support the RSS and offload mode presupposed, e.g., some >>> virtio interfaces in the cloud don't support >>> RSS and the error msg may like: >>> >>> virtio_dev_configure(): RSS support requested but not supported by >>> the device >>> Port0 dev_configure = -95 >>> >>> So to enable the l3fwd running in that environment, the Rx mode requirement >>> can be relaxed to reflect the hardware feature reality here, and the l3fwd >>> can run smoothly then. >>> >>> An option named "relax-rx-mode" is added to enable the relax action >>> here, and it's disabled by default. >>> >>> Signed-off-by: Trevor Tao >> >>Doesn't need to be an option. The application can just look at the offload >>flags and quickly determine that if multiple queues are being used than >>RSS is required. If device doesn't support RSS, then fallback to single >>queue with a warning. >> >>Hi Stephen: >> >>I think the option here was suggested/required by Konstantin Ananyev . >>The discussion thread is listed below: >> >">>>>Should we probably instead have a new commnad-line option to explicitly >>>>>disable RSS? >>>> >>>>>Something like: '--no-rss' or so? >>>> Trevor: the RSS capability for a certain port was got by the rte_eth_dev_info_get() automatically, and we think the user should not care about its status beforehand, but if it's missing, a warning notification for the degrade here would be proposed to make it run smoothly. >>> >>>Personally, I still think it would be better the user will >>>have an ability to disable it explicitly. >>>Same as l3fwd does now with 'parse-ptype'. >>> >> >>[Morten]: The "relax-rx-mode" does not explicitly disable RSS, it enables the behavior Stephen suggested: If RSS is not supported by the device, fallback to single queue with a warning. We don't need an option >for this; it should be the default behavior. >>[Morten]: I think Konstantin was asking for an option "no-rss" (or "disable-rss") to force use of single queue (disable RSS), regardless if the device supports RSS or not. > >Yes, that what was my initial suggestion: let people explicitly disable RSS if they want to. >BTW, I think it wouldn't change number of HW queues in any way. >It would just disable distribution of packets among HW queues based on RSS. >Konstantin > Thanks for your comments. I addressed your ideas with a v4 patch series. 1. A new option named "disable-rss" was added to enable the "diable-rss" case; 2. A new option named "relax-rx-offload" was added to enable the relax rx offload case; and the SW IPv4 hdr cksum was added if needed; Trevor Tao Trevor Tao