Why not add vmxnet3 nic to the VMWare build ?


Can you add the opensource vmtools package for running under VMware That way we can get better interface into VMWare and remove the 1G limitations on e1000 cards. Can I do this myself, as an addon. Is there a build chain available ? Also my hope would be that you guys release a prod ready visualized product ! Saying that, what is missing from VX, apart from hardware speed. Edit: updating the question.. getting used to interface

27 replies

Also, Vincenzo, for Cumulus Linux 3.x, the source packages are part of the same repo as the binar...Thanks Dave. I solved it! At the moment I preferred to re-compile kernel and create a deb package to export to other machines. Here are the image and headers deb file if needed.

https://drive.google.com/open?id=1_h2aHE-Moet2-ErfColdcugP5hBqy8kx
https://drive.google.com/open?id=1oFRZa1K3gmoQf5OEo5_VeqWb6DIeZWZc

BTW I had to disable the smond.service before installing and reboot the VX machine, due to a know bug still present in 3.5.1 (RN-640 (CM-16461)).
Thanks

ps: the vmxnet3 is build-in into the kernel image and not as module.
Userlevel 3
Also, Vincenzo, for Cumulus Linux 3.x, the source packages are part of the same repo as the binar...Yes, compiling as a single separate module should work. Getting it into a running VX shouldn't be too hard. If you then want a new VX image for re-use, I know it's possible, but it's not something I've done.
Also, Vincenzo, for Cumulus Linux 3.x, the source packages are part of the same repo as the binar...That's great!!
But by checking the /boot/config-4.1.0-cl-6-amd64
# CONFIG_VMXNET3 is not set
Do you think the single module compile should work as well?
I will try tomorrow and I'll let you know.
Btw thanks for the useful hints!
Thanks
Userlevel 3
Also, Vincenzo, for Cumulus Linux 3.x, the source packages are part of the same repo as the binar...It would be:
apt-get install linux-source
(no need to specify the -4.1).

That said, you shouldn't need to build the kernel as such, you just need to build vmxnet3 module, which you should be able to do by installing the linux-headers package, although it's been a while since I've done that. You'd need the source package to get the vmxnet3 sources that match our kernel.
Also, Vincenzo, for Cumulus Linux 3.x, the source packages are part of the same repo as the binar...Thanks@Dave for your answer.
One question: if I'd like to compile a new kernel image that includes the vmxnet3 module, what package should I get: linux-source-4.1 or apt-get source linux-image-'uname -r' ?
I'm trying the first method. VM is compiling.
Thanks
Userlevel 3
Also, Vincenzo, for Cumulus Linux 3.x, the source packages are part of the same repo as the binary packages, for the opensource that Cumulus itself builds. (Under http://repo3.cumulusnetworks.com/repo/pool/cumulus/ , if you are looking to download it directly, rather than using 'apt-get source pkgname'.
Userlevel 5
Is it possible to use the virtio NIC instead of e1000? All my KVM simulations use virtio by default and I know Vx supports it and comes included etc. offers very good performance... although I'm not seeing it on this list of vmware supported options --> https://kb.vmware.com/s/article/1001805
Hello there. I have the same issue trying to compile open-vm-tools or VMWare-Tools with Cumulux VX both 3.4.1, 3.4.2 and 3.5.0.
I was trying to compile by myself kernel source, but I was not able to get CumulusLinux package from http://oss.cumulusnetworks.com
Can you help us?
I need vmxnet3 driver because I'm experiencing e1000 issues during high traffic simulation
Thanks
Sorry for necroposting...I'm not able to build vmxnet3 for Cumulux VX 3.4.2 based on Debian 8.9.
I tried with open-vm-tools-10.1.5 and VMware-Tools-10.1.5-core-5055683.tar.

Any suggestion?

I need test a Jumbo frame configuration, e1000 can work only with std mtu size..
Userlevel 5
Alex, Thanks for the concise write up. This is great. We will definitely take all of this into talks with our engineers. We will update as soon as we can.
One last thing. I removed the e1000 nic and left 2 vmxnet3 nic. I noticed that the image doesn't use udev to remember witch device is witch, I remove my orig eth0 and upon reboot it turned into the first eth device found ... thats not good...
OKay, the open-vm-dkms doesn't have the vmxnet3 module !

Seems like there is a version built into modern linux kernel .

/usr/src/linux-headers-3.2.65-1+deb7u2+cl2.5+5/drivers/net/vmxnet3

seems like its not being built in the kernel package.

So back to the drawing board have to try and get the VMware tool to build

seems like my eyes have let me down.
just debugged through the vmware installer
installed kernel = 3.2.65-1+deb7u2+cl2.5+2
headers installed = 3.2.65-1+deb7u2+cl2.5+5

the 2 => 5 on the end

okay I have built the VMWare tools package
I should have followed Kristian Van Der Vliet, more closely.

I presumed
apt-get install linux-headers
was the same as
apt-get install linux-headers=$(uname -r)

it wasn't

also the sym link didn't work either, I am presuming because it was because of the error above So recap. install the headers. grab the VMWare tools tar ball from the VMWare untar and run the installer. Done thanks
Okay spoke too soon


clean out the package and started again


root@cumulus:~# apt-get install open-vm-dkms

Reading package lists... Done

Building dependency tree

Reading state information... Done

Suggested packages:

open-vm-toolbox

Recommended packages:

open-vm-tools

The following NEW packages will be installed:

open-vm-dkms

0 upgraded, 1 newly installed, 0 to remove and 31 not upgraded.

Need to get 0 B/1221 kB of archives.

After this operation, 5834 kB of additional disk space will be used.

debconf: delaying package configuration, since apt-utils is not installed

Selecting previously unselected package open-vm-dkms.

(Reading database ... 34194 files and directories currently installed.)

Unpacking open-vm-dkms (from .../open-vm-dkms_2%3a8.8.0+2012.05.21-724730-1+nmu2_all.deb) ...

Setting up open-vm-dkms (2:8.8.0+2012.05.21-724730-1+nmu2) ...

Loading new open-vm-tools-2012.05.21 DKMS files...

First Installation: checking all kernels...

dpkg: warning: version '*-*' has bad syntax: version number does not start with digit

It is likely that 3.2.65-1+deb7u2+cl2.5+2 belongs to a chroot's host

Building initial module for 3.2.65-1+deb7u2+cl2.5+2

Error! Build of vmhgfs.ko failed for: 3.2.65-1+deb7u2+cl2.5+2 (x86_64)

Consult the make.log in the build directory

/var/lib/dkms/open-vm-tools/2012.05.21/build/ for more information.


/var/lib/dkms/open-vm-tools/2012.05.21/build/vmhgfs/inode.c:1821:19: error: 'struct dentry' has no member named 'd_alias'

/var/lib/dkms/open-vm-tools/2012.05.21/build/vmhgfs/inode.c:1821:19: error: 'struct dentry' has no member named 'd_alias'


Good news is the vmxnet driver is built....

found the bug
https://bugs.debian.org/cgi-bin/bugre... get the latest version from https://packages.debian.org/wheezy-up... seems to have been built !
okay there must have been a typo as I tried to ls -l build and it didn't go any where. removed and relinked and dkms is working now !!!
Yes it exists +root@cumulus:/lib/modules/3.2.65-1+deb7u2+cl2.5+2# ll total 200 lrwxrwxrwx 1 root root 46 Aug 7 10:55 build -> /usr/src/linux-headers-3.2.65-1+deb7u2+cl2.5+2 drwxr-xr-x 9 root root 4096 Jul 29 21:22 kernel -rw-r--r-- 1 root root 30194 Aug 7 11:04 modules.alias -rw-r--r-- 1 root root 32009 Aug 7 11:04 modules.alias.bin -rw-r--r-- 1 root root 5223 Jul 29 21:22 modules.builtin -rw-r--r-- 1 root root 7314 Aug 7 11:04 modules.builtin.bin -rw-r--r-- 1 root root 15285 Aug 7 11:04 modules.dep -rw-r--r-- 1 root root 25267 Aug 7 11:04 modules.dep.bin -rw-r--r-- 1 root root 160 Aug 7 11:04 modules.devname -rw-r--r-- 1 root root 8176 Jul 29 21:22 modules.order -rw-r--r-- 1 root root 131 Aug 7 11:04 modules.softdep -rw-r--r-- 1 root root 23005 Aug 7 11:04 modules.symbols -rw-r--r-- 1 root root 29163 Aug 7 11:04 modules.symbols.bin but its not looking for ./build its looking for ./source I am trying to build the VMWare offical package, but it doesn't like the kernel-header directory either /usr/src/linux-headers-3.2.65-1+deb7u2+cl2.5+5/ interesting..
Userlevel 1
The package will not automatically create the symlink. Double check that the link from /lib/modules/3.2.65-1+deb7u2+cl2.5+2/build exists and points to the correct place in /usr/src/
Had the right kernel-headers installed. I thought it created the sym link ! dkms build -m open-vm-tools -v 2012.05.21 Error! echo Your kernel headers for kernel 3.2.65-1+deb7u2+cl2.5+2 cannot be found at /lib/modules/3.2.65-1+deb7u2+cl2.5+2/build or /lib/modules/3.2.65-1+deb7u2+cl2.5+2/source. Still an issue, its looking for source ??? which strange, I should be able to build which just the headers !
Userlevel 1
You'll need to install the kernel headers with:

apt-get install linux-headers=$(uname -r)

You may also need to add a symlink:

ln -sf "/usr/src/linux-headers-$(uname -r)" "/lib/modules/$(uname -r)/build"
This is where I am stuck for now dkms build -m open-vm-tools -v 2012.05.21 Error! echo Your kernel headers for kernel 3.2.65-1+deb7u2+cl2.5+2 cannot be found at /lib/modules/3.2.65-1+deb7u2+cl2.5+2/build or /lib/modules/3.2.65-1+deb7u2+cl2.5+2/source.
Okay so a step further I added debian.list in /etc/apt/sources.list.d with this deb http://http.us.debian.org/debian wheezy main deb http://security.debian.org/ wheezy/updates main next apt-get update next i tried this apt-get install open-vm-dkms .... Loading new open-vm-tools-2012.05.21 DKMS files... First Installation: checking all kernels... dpkg: warning: version '*-*' has bad syntax: version number does not start with digit It is likely that 3.2.65-1+deb7u2+cl2.5+2 belongs to a chroot's host Module build for the currently running kernel was skipped since the kernel source for this kernel does not seem to be installed. looks like I am not going to be able to use dkms 😞
Userlevel 2
You are correct. CL 2.5.3 follows Debian Wheezy.
Okay, I will do a bit of a running commentary. Found this, seems like its already packaged up https://packages.debian.org/search?keywords=open-vm-tools Now I have to remember my debian days and add in the deb repos in. What version of debian does 2.5.3 follow. I note its debian release 7.8. Also I have modified the vm. removed all but 1 nic. added in 1 vmxnet3 ( I had to change the OS type to other linux 2.6 as the linux 64 didn't allow vmxnet nics)
Userlevel 4
Yes, you can log in to the VM and it'll look just like a Linux box. Keep us posted with what you're doing with it!
Oooh, sorry, I am a complete newbie . haven't logged into a cumulus yet !. Just did the download of the VM. I am in the process of organizing some test box's from the local rep. So your saying in the OVA (VMWare template) I can just log in and gain normal linux access. Thats cool, so I can build what I like against it. if so Awesome. Planning to spend some time on it this weekend
Userlevel 5
@Alex, thanks for this great question. While we get the engineers response there is this:

https://github.com/vmware/open-vm-tools

You should be able to build this inside a VM.

Reply