<div dir="ltr">We use netvsc PMD (drivers/net/netvsc/).<div>We don't explicitly configure the RETA table. We configure the device with 40 rx queues (rte_eth_dev_configure) and use rte_eth_dev_rss_reta_query() to query the RETA table (result posted earlier).</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Nov 4, 2022 at 9:52 AM Stephen Hemminger <<a href="mailto:stephen@networkplumber.org">stephen@networkplumber.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Tue, 1 Nov 2022 17:25:24 -0700<br>
Yang Luan <<a href="mailto:luan.penny@gmail.com" target="_blank">luan.penny@gmail.com</a>> wrote:<br>
<br>
> Hello,<br>
> <br>
> <br>
> Our application uses the net_netvsc driver in DPDK 21.08 on Azure. We found<br>
> an issue where RSS doesn’t deliver packets to the correct rx queue. The<br>
> instance type we use is Standard_L80s_v3 with MT27800 Family [ConnectX-5<br>
> Virtual Function] NICs. The NIC is configured with 40 rx queues and the<br>
> RETA table is configured (confirmed by rte_eth_dev_rss_reta_query()) as<br>
> below.<br>
> <br>
> <br>
> <br>
>   0:       0    1    2    3    4    5    6    7<br>
> <br>
>   8:       8    9   10   11   12   13   14   15<br>
> <br>
>  16:      16   17   18   19   20   21   22   23<br>
> <br>
> 24:      24   25   26   27   28   29   30   31<br>
> <br>
> 32:      32   33   34   35   36   37   38   39<br>
> <br>
> 40:       0    1    2    3    4    5    6    7<br>
> <br>
> 48:       8    9   10   11   12   13   14   15<br>
> <br>
> 56:      16   17   18   19   20   21   22   23<br>
> <br>
> 64:      24   25   26   27   28   29   30   31<br>
> <br>
> 72:      32   33   34   35   36   37   38   39<br>
> <br>
> 80:       0    1    2    3    4    5    6    7<br>
> <br>
> 88:       8    9   10   11   12   13   14   15<br>
> <br>
> 96:      16   17   18   19   20   21   22   23<br>
> <br>
> 104:      24   25   26   27   28   29   30   31<br>
> <br>
> 112:      32   33   34   35   36   37   38   39<br>
> <br>
> 120:       0    1    2    3    4    5    6    7<br>
> <br>
> <br>
> <br>
> One example is a packet received with rss key 0xEDE25D84 was incorrectly<br>
> delivered to rx queue 12. We expect it to be queue 4 as 0xEDE25D84 & 0x7F =<br>
> 4 assuming seven of the least significant bits (LSBs) are used for indexing<br>
> into the RETA table.  Is it a bug or we made a wrong assumption on how the<br>
> RETA table is accessed with that device?<br>
> <br>
> <br>
> Thank you.<br>
> <br>
> Yang<br>
<br>
Are you using failsafe PMD or the native netvsc PMD?<br>
Are you programming reta table via DPDK or through other API's?<br>
</blockquote></div>