Bug 436

Summary: rte_eth_promiscuous_enable fails for memif on l2fwd
Product: DPDK Reporter: Vipin Varghese (vipin.varghese)
Component: ethdevAssignee: Jakub Grajciar (jgrajcia)
Status: CONFIRMED ---    
Severity: normal CC: ajit.khaparde, bruce.richardson
Priority: Normal    
Version: 20.02   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Vipin Varghese 2020-04-04 04:34:16 CEST
target:
Application: l2fwd

CMD: `./build/l2fwd --vdev=net_tap0 --vdev=net_memif,role=master -l 8,51 --socket-mem=128,0 --socket-limit=1024,0 --file-prefix=1 --proc-type=primary --no-pci -- -p 0x3 -T 1`

Error: `EAL: Error - exiting with code: 1
  Cause: rte_eth_promiscuous_enable:err=Operation not supported, port=1`


Possible reason: in file `"rte_eth_memif.c"` for ` struct eth_dev_ops ops`, absence of ".promiscuous_enable & .promiscuous_disable"
Comment 1 Ajit Khaparde 2020-04-25 02:47:15 CEST
Jakub, Can you please take a look? Thanks
Comment 2 Jakub Grajciar 2020-04-27 07:43:43 CEST
I recently addressed similar issue, this patch should fix promiscuous mode for memif pmd: https://patchwork.dpdk.org/patch/68666/
Comment 3 Vipin Varghese 2020-04-27 08:37:39 CEST

@jakub, 

the patch shared has `data->promiscuous = 1;`. Is there a function to get or set promiscuous?

@Ajith: this looks like a confirmed issue for the DPDk version 20.02. Can this be updated as same.
Comment 4 Jakub Grajciar 2020-04-27 08:50:19 CEST
memif works in promiscuous mode only, but ethdev APIs will work. rte_eth_promiscuous_enable returns success, rte_eth_promiscuous_disable returns error as memif only works in promiscuous mode, and rte_eth_promiscuous_get returns 1.
Comment 5 Vipin Varghese 2020-04-27 10:24:18 CEST
thanks @jakub for the explanation that memif is always promiscuous. I am ok with this approach, we can close this.
Comment 6 Ajit Khaparde 2020-04-27 20:02:04 CEST
Thanks Jakub.
Closing this since its working as expected.
Comment 7 Vipin Varghese 2020-04-28 04:10:22 CEST
Hi Ajit & Jakub,

the bug is actually confirmed in 20.02. As I understand the patch will fix the same in 20.05. If this information is correct, I am not sure `INVALID` is right bug state.

Should not it be confirmed, and fixed by patch?
Comment 8 Ajit Khaparde 2020-04-28 04:17:21 CEST
Right. I missed that the fix is in 20.05
In that case it cannot be set as invalid.
20.02 is not LTS release and 20.05-rc1 is out.
So mark it as wontfix then?
Comment 9 Vipin Varghese 2020-04-28 04:18:59 CEST
thanks Ajit, with this information we can recommend users and customers for 20.05 for memif.