vmxnet3 no longer functional on DPDK 21.11
Ferruh Yigit
ferruh.yigit at intel.com
Tue Nov 30 09:53:16 CET 2021
On 11/29/2021 8:45 PM, Lewis Donzis wrote:
> Hello.
>
> We just upgraded from 21.08 to 21.11 and it's rather astounding the number of incompatible changes in three months. Not a big deal, just kind of a surprise, that's all.
>
> Anyway, the problem is that the vmxnet3 driver is no longer functional on FreeBSD.
>
> In drivers/net/vmxnet3/vmxnet3_ethdev.c, vmxnet3_dev_start() gets an error calling rte_intr_enable(). So it logs "interrupt enable failed" and returns an error.
>
> In lib/eal/freebsd/eal_interrupts.c, rte_intr_enable() is returning an error because rte_intr_dev_fd_get(intr_handle) is returning -1.
>
> I don't see how that could ever return anything other than -1 since it appears that there is no code that ever calls rte_intr_dev_fd_set() with a value other than -1 on FreeBSD. Also weird to me is that even if it didn't get an error, the switch statement that follows looks like it will return an error in every case.
>
> Nonetheless, it worked in 21.08, and I can't quite see why the difference, so I must be missing something.
>
> For the moment, I just commented the "return -EIO" in vmxnet3_ethdev.c, and it's now working again, but that's obviously not the correct solution.
>
> Can someone who's knowledgable about this mechanism perhaps explain a little bit about what's going on? I'll be happy to help troubleshoot. It seems like it must be something simple, but I just don't see it yet.
>
> Thanks,
> lew
+Yong
More information about the dev
mailing list