How rings are layed out when accessing virtual functions?

the below details is about Intel, what’s about mlx5 drivers ???


+/* How rings are layed out when accessing virtual functions or

    • offloaded queues is device specific. To allow users to flow
    • steering and specify these queues though break the ring cookie
    • into a 32bit queue index with an 8 bit virtual function "


VF bind to a VM / KVM hypervisor (Linux Only)

By default the number of queues available are related to the number of cores allocated to your VM/VF

But there’s a way to increase this number by allocation a number of MSI-X interrupt line per VF with NUM_VF_MSIX where a number of lines maximum is 1144 shared to PF and VFs

Theses settings are avaialble at the FW level and can be configured by mlxconfig.

A new mechanism is also implemented in our latest fw and can be enable at the FW level DYNAMIC_VF_MSIX_TABLE

Allocation of number of queues is also dependant on your system, VM on top Esxi doesn’t have the same mechanism.