vmware-tools and FreeBSD 8.0

hi all!
i'll try to install vmware-tools from ESX 4.0 Update 1 on FreeBSD 8.0.
vmware-tools doesn't contain binary kernel modules for 8.0, that's why i'm try to compile modules from included sources. vmmemctl.ko and vmxnet.ko compiled successfull, but compilation of vmblock.ko finished with error:

Code:
..................
vfsops.c:116: error: conflicting types for 'VMBlockVFSMount'
vfsops.c:68: error: previous declaration of 'VMBlockVFSMount' was here
vfsops.c: In function 'VMBlockVFSMount':
vfsops.c:159: error: 'AT_FDCWD' undeclared (first use in this function)
vfsops.c:159: error: (Each undeclared identifier is reported only once
vfsops.c:159: error: for each function it appears in.)
vfsops.c:190: error: too many arguments to function 'VOP_UNLOCK'
vfsops.c:212: error: too many arguments to function 'VOP_UNLOCK'
vfsops.c:220:5: error: "BSD_VERSION" is not defined
vfsops.c: At top level:
vfsops.c:257: error: conflicting types for 'VMBlockVFSUnmount'
vfsops.c:72: error: previous declaration of 'VMBlockVFSUnmount' was here
vfsops.c:291:55: error: macro "VOP_LOCK" passed 3 arguments, but takes just 2
vfsops.c: In function 'VMBlockVFSUnmount':
vfsops.c:291: error: 'VOP_LOCK' undeclared (first use in this function)
vfsops.c:298: error: too many arguments to function 'VOP_UNLOCK'
vfsops.c: At top level:
vfsops.c:341: error: conflicting types for 'VMBlockVFSRoot'
vfsops.c:69: error: previous declaration of 'VMBlockVFSRoot' was here
vfsops.c:349:36: error: macro "vn_lock" passed 3 arguments, but takes just 2
vfsops.c: In function 'VMBlockVFSRoot':
vfsops.c:349: error: 'vn_lock' undeclared (first use in this function)
vfsops.c: At top level:
vfsops.c:377: error: conflicting types for 'VMBlockVFSStatFS'
vfsops.c:71: error: previous declaration of 'VMBlockVFSStatFS' was here
vfsops.c:387:64: error: macro "VFS_STATFS" passed 3 arguments, but takes just 2
vfsops.c: In function 'VMBlockVFSStatFS':
vfsops.c:387: error: 'VFS_STATFS' undeclared (first use in this function)
vfsops.c: At top level:
vfsops.c:427: error: conflicting types for 'VMBlockVFSSync'
vfsops.c:70: error: previous declaration of 'VMBlockVFSSync' was here

*** Error code 1

any solutions?
 
I've no problem here tested with VM-WKST 7.0. However, other boxes under ESX are running 7.2. I will see if I can test 8.0 on one of other box. Are you using cd image provided by Vmware or ports collection?
 
i'm use vmware-tools from ESX
for 7.x binary modules included in vmware-tools, and all work fine
 
You might consider the emulators/open-vm-tools or emulators/open-vm-tools-nox11 port(s). I've had good luck with them.
 
swills,
is not the right way ... I am interested in installing original vmware-tools from ESX 4.0 Update1
 
What's your goal? From what I've seen, the open-vm-tools provide all the functionality of the vmware-tools.
 
swills said:
What's your goal? From what I've seen, the open-vm-tools provide all the functionality of the vmware-tools.

Just curious, but have you used open-vm-tools in FreeBSD 8?

I found this thread while looking for how to resolve the lack of kernel modules for FreeBSD 8 for the commercial VMWare tools. I very much liked the suggestion here of using an open source version. One thing I noticed though is that the FreeBSD port of open-vm-tools is rather out of date. The current release on the Open Virtual Machine Tools website is open-vm-tools-2009.11.16, and the port is using open-vm-tools-2009.05.22. That puts the port six releases out of date. So, that's why I was wondering if anyone has used it under FreeBSD 8 and whether or not is is working properly for them.

-Chris
 
Funny you should mention that...

I have used the current version, but only on ESX where I didn't care if the X11 stuff worked. But I've never tried it with the Unity stuff turned on.

I worked on updating the port, you can get it here: http://pastebin.com/f33115d2b

Could you test it?
 
swills said:
Funny you should mention that...

I have used the current version, but only on ESX where I didn't care if the X11 stuff worked. But I've never tried it with the Unity stuff turned on.

I worked on updating the port, you can get it here: http://pastebin.com/f33115d2b

Could you test it?

I tried testing. Sorry it took so long, but I didn't have X11 installed on this machine and this doesn't appear to be the nox11 version of the open-vm-tools port. My little VM has been installing all the pre-reqs for the full port for hours. :)

Final result: Failed to install.

Code:
cc -O2 -fno-strict-aliasing -pipe -Werror -D_KERNEL -DKLD_MODULE -nostdinc  -I/root/open-vm-tools/work/open-vm-tools-2009.11.17-210370
/lib/include -I/root/open-vm-tools/work/open-vm-tools-2009.11.17-210370/lib/backdoor -I/root/open-vm-tools/work/open-vm-tools-2009.11.17-210370
/lib/hgfs -I/root/open-vm-tools/work/open-vm-tools-2009.11.17-210370/modules/freebsd/shared -I. -I@ -I@/contrib/altq -finline-limit=8000 
--param inline-unit-growth=100 --param large-function-growth=1000 -fno-common  -mno-align-long-strings -mpreferred-stack-boundary=2  -mno-mmx 
-mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-protector -Wall -Werror 
-Wno-redundant-decls -Wnested-externs -Wstrict-prototypes -Wno-missing-prototypes -Wpointer-arith -Winline -Wcast-qual -c vnops.c
vnops.c: In function 'HgfsVopAccess':
vnops.c:328: error: 'struct vop_access_args' has no member named 'a_mode'
*** Error code 1

Stop in /root/open-vm-tools/work/open-vm-tools-2009.11.17-210370/modules/freebsd/vmhgfs.
*** Error code 1

Stop in /root/open-vm-tools/work/open-vm-tools-2009.11.17-210370/modules.
*** Error code 1

Stop in /root/open-vm-tools/work/open-vm-tools-2009.11.17-210370.
*** Error code 1

Stop in /root/open-vm-tools.
 
The files directory is just a problem with the shar. Like you said, not a huge deal.

The real question is, Once it's built and installed, does it work? :)
 
swills said:
The files directory is just a problem with the shar. Like you said, not a huge deal.

The real question is, Once it's built and installed, does it work? :)

It appears to be working. vxn0 ethernet devices are working. Shutdown and restart from the vSphere console is working.

Are there any tests you would like me to run?

-Chris
 
8.0-RELEASE FreeBSD 8.0-RELEASE

i can not install open-vm-tools under freebsd 8

Code:
In file included from @/sys/bus.h:542,
                 from if_vxn.c:57:
./device_if.h:102: error: stray '\335' in program
./device_if.h:102: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_PROBE'
./device_if.h:139: error: stray '\335' in program
./device_if.h:139: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_'
./device_if.h:139: error: stray '\335' in program
./device_if.h:139: error: stray '\335' in program
./device_if.h:174: error: stray '\335' in program
./device_if.h:174: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_ATTACH'
./device_if.h:208: error: stray '\335' in program
./device_if.h:208: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_DETACH'
./device_if.h:234: error: stray '\335' in program
./device_if.h:234: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_SHUTDOWN'
./device_if.h:269: error: stray '\335' in program
./device_if.h:269: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_SUSPEND'
./device_if.h:299: error: stray '\335' in program
./device_if.h:299: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_RESUME'
./device_if.h:333: error: stray '\335' in program
./device_if.h:333: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'CE_QU'
./device_if.h:333: error: stray '\335' in program
In file included from @/sys/bus.h:543,
                 from if_vxn.c:57:
./bus_if.h:42: error: stray '\335' in program
./bus_if.h:42: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NT_CH'
./bus_if.h:42: error: stray '\335' in program
./bus_if.h:103: error: stray '\335' in program
./bus_if.h:103: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'VAR'
./bus_if.h:134: error: stray '\335' in program
./bus_if.h:134: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'TE_'
./bus_if.h:134: error: stray '\335' in program
./bus_if.h:156: error: stray '\335' in program
./bus_if.h:156: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'LD_DETACHED'
./bus_if.h:179: error: stray '\335' in program
./bus_if.h:179: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'VER_ADDED'
./bus_if.h:211: error: stray '\335' in program
./bus_if.h:211: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'LD'
./bus_if.h:285: error: stray '\335' in program
./bus_if.h:285: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'VATE_RESOURCE'
./bus_if.h:313: error: stray '\335' in program
./bus_if.h:313: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'VATE_RESOURCE'
./bus_if.h:381: error: stray '\335' in program
./bus_if.h:381: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NTR'
./bus_if.h:411: error: stray '\335' in program
./bus_if.h:411: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NTR'
./bus_if.h:520: error: stray '\335' in program
./bus_if.h:520: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ST'
./bus_if.h:548: error: stray '\335' in program
./bus_if.h:548: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'LD_PRESENT'
./bus_if.h:573: error: stray '\335' in program
./bus_if.h:573: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'LD_PNP'
./bus_if.h:573: error: stray '\335' in program
./bus_if.h:599: error: stray '\335' in program
./bus_if.h:599: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'LD_LOCAT'
./bus_if.h:599: error: stray '\335' in program
./bus_if.h:622: error: stray '\335' in program
./bus_if.h:622: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'ND_'
./bus_if.h:622: error: stray '\335' in program
./bus_if.h:645: error: stray '\335' in program
./bus_if.h:645: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'G_'
./bus_if.h:645: error: stray '\335' in program
./bus_if.h:675: error: stray '\335' in program
./bus_if.h:675: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NTED_CH'
./bus_if.h:675: error: stray '\335' in program
./bus_if.h:715: error: stray '\335' in program
./bus_if.h:715: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'NT_DEV'
./bus_if.h:715: error: stray '\335' in program
./bus_if.h:715: error: stray '\335' in program
In file included from @/dev/pci/pcivar.h:212,
                 from if_vxn.c:73:
./pci_if.h:23: error: stray '\335' in program
./pci_if.h:23: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_READ_CONF'
./pci_if.h:23: error: stray '\335' in program
./pci_if.h:37: error: stray '\335' in program
./pci_if.h:37: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_WR'
./pci_if.h:37: error: stray '\335' in program
./pci_if.h:37: error: stray '\335' in program
./pci_if.h:50: error: stray '\335' in program
./pci_if.h:50: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_GET_POWERSTATE'
./pci_if.h:62: error: stray '\335' in program
./pci_if.h:62: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_SET_POWERSTATE'
./pci_if.h:75: error: stray '\335' in program
./pci_if.h:75: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_GET_VPD_'
./pci_if.h:75: error: stray '\335' in program
./pci_if.h:89: error: stray '\335' in program
./pci_if.h:89: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_GET_VPD_READONLY'
./pci_if.h:102: error: stray '\335' in program
./pci_if.h:102: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_ENABLE_BUSMASTER'
./pci_if.h:114: error: stray '\335' in program
./pci_if.h:114: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_D'
./pci_if.h:114: error: stray '\335' in program
./pci_if.h:126: error: stray '\335' in program
./pci_if.h:126: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_ENABLE_'
./pci_if.h:126: error: stray '\335' in program
./pci_if.h:138: error: stray '\335' in program
./pci_if.h:138: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_D'
./pci_if.h:138: error: stray '\335' in program
./pci_if.h:138: error: stray '\335' in program
./pci_if.h:150: error: stray '\335' in program
./pci_if.h:150: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_ASS'
./pci_if.h:150: error: stray '\335' in program
./pci_if.h:150: error: stray '\335' in program
./pci_if.h:163: error: stray '\335' in program
./pci_if.h:163: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_F'
./pci_if.h:163: error: stray '\335' in program
./pci_if.h:176: error: stray '\335' in program
./pci_if.h:176: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_ALLOC_MS'
./pci_if.h:176: error: stray '\335' in program
./pci_if.h:188: error: stray '\335' in program
./pci_if.h:188: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_ALLOC_MS'
./pci_if.h:188: error: stray '\335' in program
./pci_if.h:201: error: stray '\335' in program
./pci_if.h:201: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_REMAP_MS'
./pci_if.h:201: error: stray '\335' in program
./pci_if.h:214: error: stray '\335' in program
./pci_if.h:214: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_RELEASE_MS'
./pci_if.h:214: error: stray '\335' in program
./pci_if.h:226: error: stray '\335' in program
./pci_if.h:226: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_MS'
./pci_if.h:226: error: stray '\335' in program
./pci_if.h:238: error: stray '\335' in program
./pci_if.h:238: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_MS'
./pci_if.h:238: error: stray '\335' in program
cc1: warnings being treated as errors
In file included from if_vxn.c:73:
@/dev/pci/pcivar.h: In function 'pci_get_subvendor':
@/dev/pci/pcivar.h:244: warning: implicit declaration of function 'BUS_READ_IVAR'
@/dev/pci/pcivar.h:244: warning: nested extern declaration of 'BUS_READ_IVAR'
@/dev/pci/pcivar.h: In function 'pci_set_subvendor':
@/dev/pci/pcivar.h:244: warning: implicit declaration of function 'BUS_WRITE_IVAR'
@/dev/pci/pcivar.h:244: warning: nested extern declaration of 'BUS_WRITE_IVAR'
@/dev/pci/pcivar.h: In function 'pci_read_config':
@/dev/pci/pcivar.h:274: warning: implicit declaration of function 'PCI_READ_CONFIG'
@/dev/pci/pcivar.h:274: warning: nested extern declaration of 'PCI_READ_CONFIG'
@/dev/pci/pcivar.h: In function 'pci_write_config':
@/dev/pci/pcivar.h:280: warning: implicit declaration of function 'PCI_WRITE_CONFIG'
@/dev/pci/pcivar.h:280: warning: nested extern declaration of 'PCI_WRITE_CONFIG'
@/dev/pci/pcivar.h: In function 'pci_enable_busmaster':
@/dev/pci/pcivar.h:318: warning: implicit declaration of function 'PCI_ENABLE_BUSMASTER'
@/dev/pci/pcivar.h:318: warning: nested extern declaration of 'PCI_ENABLE_BUSMASTER'
@/dev/pci/pcivar.h: In function 'pci_disable_busmaster':
@/dev/pci/pcivar.h:324: warning: implicit declaration of function 'PCI_DISABLE_BUSMASTER'
@/dev/pci/pcivar.h:324: warning: nested extern declaration of 'PCI_DISABLE_BUSMASTER'
@/dev/pci/pcivar.h: In function 'pci_enable_io':
@/dev/pci/pcivar.h:330: warning: implicit declaration of function 'PCI_ENABLE_IO'
@/dev/pci/pcivar.h:330: warning: nested extern declaration of 'PCI_ENABLE_IO'
@/dev/pci/pcivar.h: In function 'pci_disable_io':
@/dev/pci/pcivar.h:336: warning: implicit declaration of function 'PCI_DISABLE_IO'
@/dev/pci/pcivar.h:336: warning: nested extern declaration of 'PCI_DISABLE_IO'
@/dev/pci/pcivar.h: In function 'pci_get_vpd_ident':
@/dev/pci/pcivar.h:342: warning: implicit declaration of function 'PCI_GET_VPD_IDENT'
@/dev/pci/pcivar.h:342: warning: nested extern declaration of 'PCI_GET_VPD_IDENT'
 
ChrisKnight said:
It appears to be working. vxn0 ethernet devices are working. Shutdown and restart from the vSphere console is working.

Are there any tests you would like me to run?

-Chris

That's exactly what I needed, thanks!
 
Well, the port was updated, so I guess if you're still having trouble, submit a PR and the maintainer will take a look.
 
Well,

I've try to install vmware tools from vshpere. Compile OK, but the script didn't load one of the kernel modules. I googled it and it appears that this is a known issue. I followed instructions how to recompile manually this module and replace the original compiled. Click http://falz.net/vmware_freebsd_tools :)

However there was still problems. When I run the script for the first time, it brings me to a configuration script and after that it suppose to start the tools every time. I don't care about xorg and that kind of stuff, because I am dealing mostly with servers. But I do want it to running automatically, because this are servers after all and I don't want to check them every 20 minutes if the tools are running.
But the vmware tools was running about 10 minutes and then stop. Rerunning the script didn't start directly the tools, it brings me back to the configuration script. If I am not there to reconfigure them again, everything will fail.

So lots of problems and I didn't manage to get them work OK.

So I got the open vm tools, they compile just fine and run with no problems. But have upcoming migration, new better vmware license, and I'll run clusters.
I really need to know if the open vm tools can do the job with the vmotion, the data recovery backup solution and all that cluster features without downtime of the virtual machines.

Or I'll need to get back to the original vmware tools and continue to try to install and run them again.

Thanks a lot : )
 
Back
Top