On 11/04/2024 09:48, Juraj Linkeš wrote:
+ def get_capas_rxq( + self, supported_capabilities: MutableSet, unsupported_capabilities: MutableSet + ) -> None: + """Get all rxq capabilities and divide them into supported and unsupported. + + Args: + supported_capabilities: A set where capabilities which are supported will be stored. + unsupported_capabilities: A set where capabilities which are + not supported will be stored. + """ + self._logger.debug("Getting rxq capabilities.") + command = "show rxq info 0 0" + rxq_info = self.send_command(command) + for line in rxq_info.split("\n"): + bare_line = line.strip() + if bare_line.startswith("RX scattered packets:"): + if bare_line.endswith("on"): + supported_capabilities.add(NicCapability.scattered_rx) + else: + unsupported_capabilities.add(NicCapability.scattered_rx)
It doesn't look like this works in normal condition. I've noticed that this appears as "on" if I set --max-pkt-len=9000 on the E810-C. Otherwise it's off... and with Jeremy's patch based on this, the pmd_buffer_scatter test gets skipped when it's supported.
Apart from this, everything else seems to work as expected. I'll send a review of the code as soon as possible.