[CFT] VMware vmxnet3 ethernet driver
Bryan Venteicher
bryanv at daemoninthecloset.org
Tue Aug 27 14:53:07 UTC 2013
----- Original Message -----
> Bezüglich Bryan Venteicher's Nachricht vom 27.08.2013 06:18 (localtime):
>
> ...
>
> >> It seems if_vmx doesn't support jumbo frames. If I set mtu 9000, I get
> >> »vmx0: cannot populate Rx queue 0«, I have no problems using jumbo
> >> frames with vmxnet3.
> >>
> > This could fail for two reasons - could not allocate an mbuf cluster,
> > or the call to bus_dmamap_load_mbuf_sg() failed. For the former, you
> > should check vmstat -z. For the later, the behavior of
> > bus_dmamap_load_mbuf_sg()
> > changed between 9.1 and 9.2, and I know it was broken for awhile. I don't
> > recall exactly when I fixed it (I think shortly after I made the original
> > announcement). Could you retry with the files from HEAD @ [1]? Also, there
> > are new sysctl oids (dev.vmx.X.mbuf_load_failed & dev.vmx.X.mgetcl_failed)
> > for these errors.
> >
> > I just compiled the driver on 9.2-RC2 with the sources from HEAD and was
> > able to change the MTU to 9000.
> >
> > [1]- http://svnweb.freebsd.org/base/head/sys/dev/vmware/vmxnet3/
>
> Thanks a lot for your ongoing work!
> I can confirm that with recent if_vmx.c from head and compiled for
> 9.2-RC3, setting mtu to 9000 works as expected :-)
>
>
> >> I took a oldish host (4x2,8GHz Core2[LGA775]) with recent software: ESXi
> >> 5.1U1 and FreeBSD-9.2-RC2
> >> Two guests are connected to one MTU9000 "VMware Software Switch".
> >>
> > I've got a few performance things to still look at. What's the sysctl
> > dev.vmx.X output for the if_vmx<->if_vmx tests?
>
> Just repeated if_vmx simple iperf bench, results vary slightly from
> standard 10sec run to run, but still noticable high Intr usage:
>
The intr usage is higher than the other drivers you compared against
because if_vmx does the off-level processing in ithreads where as the
others do it in a taskqueue.
BTW: if_vmx can to LRO as well. I don't think the emulated e1000 can,
but I bet the e1000e does.
> if_vmx <-> if_vmx
> 1.32 GBits/sec, load: 10-45%Sys 40-48%Intr
>
> if_vmxJumbo <-> if_vmxJumbo
> 5.01 GBits/sec, load: 10-45%Sys 40-48%Intr
>
> Please find attached the different outputs of dev.vmx.X (the mtu9000 run was
> only 3.47GBits/sec in that case, took the numbers anyway)
>
> wbr,
>
> -Harry
>
>
More information about the freebsd-current
mailing list