[dpdk-dev] RSS when doing VF to VF on 82599 NICs

Olivier MATZ olivier.matz at 6wind.com
Fri Nov 10 15:56:09 CET 2017


Hi,

I have a setup where a host and a guest communicates via 2 VFs (Intel
Niantic):

+----------------------------------------+
|                                  VM    |
|     +---+                              |
|     |   |                              |
|     |   v   testpmd                    |
|             icmpecho mode              |
|    +-----+  (replies to ping)          |
|    |VF1.2|                             |
|    |     |                             |
|    +-----+                             |
|                                        |
|     ^   |                              |
+---  | - | -----------------------------+           +-------------+
|     |   v                        HOST  |           |             |
|  . . . . . . . . . . . . . . . . . . . |           | traffic     |
|  . +-----+                           . |           | generator   |
|  . |VF1.1|  <----         <-----   +---+  <------  |             |
|  . |     |     dpdk l3fwd          |PF0|           | send pings  |
|  . +-----+  ---->         ----->   |   |  ------>  | at high rate|
|  .                                 +---+           |             |
|  . . . . . . . . . . . . . . . . . . . |           | count       |
|       +------+                         |           | received    |
|       | PF1  |                         |           | responses   |
+-------+------+-------------------------+           +-------------+
       unused


VF1.1 and VF1.2 are associated to PF1.

The dpdk application in the host manages PF0 and VF1.1, while PF1
is managed by the Linux kernel.

This test works, but we noticed that RSS is not working: only one queue
receives packets on VF1.1 or VF1.2.


Our understanding of the Intel 82599 datasheets is that RSS should work
in VFs, the limitation is that there is only one shared RETA table and
RSS hash/key for PF and VFs.

We didn't find anything saying that RSS does not work when doing VF to
VF. Is it supposed to work? If yes, is there anything specific to do to
enable it?

Thanks,
Olivier


More information about the dev mailing list