Updates: many thanks for MLNX engineering team, doing the following can resolve
this issue:
1- On power shell: "Set-VMNetworkAdapter -VMName <VM_NAME> -Name "Network
Adapter" -IovQueuePairsRequested 64"
2- In the registry editor, make sure that you increase the ExtraVFsQuotas
percentage to be 1000 to use full resources.
HKEY_LOCAL_MACHINE
\SYSTEM\CurrentControlSet\Control\Class\{4d36e97d-e325-11ce-bfc1-
08002be10318}\<nn>\Parameters
3- BlockFlowsForPerformance registry key:
HKEY_LOCAL_MACHINE
\SYSTEM\CurrentControlSet\Control\Class\{4d36e97d-e325-11ce-bfc1-
08002be10318}\<nn>\Parameters
When the BlockFlowsForPerformance registry is set to 1, by default only L4
rules are allowed to be configured with rte_flow API.
When the BlockFlowsForPerformance is set to 0, then L3 and L4 rules are allowed.
-----Original Message-----
From: Stephen Hemminger <[email protected]>
Sent: Friday, January 4, 2019 5:08 PM
To: Liwu Liu <[email protected]>
Cc: [email protected]
Subject: Re: [dpdk-users] Cannot run DPDK applications using Mellanox NIC under
Hyper-V
On Sat, 5 Jan 2019 00:35:13 +0000
Liwu Liu <[email protected]> wrote:
> Hi Stephen,
>
> Yeah we are seeing all NETVSC, failsafe PMD, TAP, MLX4 VF. We are expecting
> bifurcation mode where default traffic goes with MLX4_EN slave to NETVSC
> master to enter Linux net stack and certain flow-defined traffic shall go
> into DPDK RX queue rather than MLX4_EN net-dev queue. Unfortunately as we
> cannot define flow into VF NIC, we cannot re-direct traffic into DPDK
> user-land.
This is a little more complex.
You need to use rte_flow on the failsafe PMD and that is supposed to get
propogated to TAP and MLX VF.
The TAP PMD programs BPF in kernel, and the MLX VF PMD programs the VF flow
tables.
Haven't tried it myself.