Subject: vmware 3.0.0 beta?
To: None <port-i386@netbsd.org>
From: Duncan McEwan <duncan@mcs.vuw.ac.nz>
List: port-i386
Date: 11/09/2001 17:21:39
Has anyone had a look at making the vmware 3.0.0 for linux beta work on
NetBSD?

I just had a shot at this and got stuck... :-(

I used a 1.5Y kernel built from sources from around the end of October.  I
also used the vmware-netbsd-1.0.tgz from Wasabi (with patches posted to
port-i386 by Atsushi Onoe on June 27th).

I installed the lkm's from the NetBSD package, after recompiling them for
the current kernel, and installed the necessary files from the vmware
distribution by hand.

But when I run vmware the following is displayed...

    Error:
    -----------
    Could not get vmmon module version: Bad address.
    You have an incorrect version of the `vmmon' kernel module.
    Try reinstalling VMware Workstation.

If I ktrace the binary I find the following.

   ...
   838 vmware-mks CALL  ioctl(0x9,_IO('^@',0xc9,0),0)
   838 vmware-mks RET   ioctl -1 errno -14 Bad address
   838 vmware-mks CALL  time(0)
   838 vmware-mks RET   time 1005267177/0x3beb28e9
   838 vmware-mks CALL  writev(0x4,0xbfbfbed8,0x3)
   838 vmware-mks GIO   fd 4 wrote 17 bytes
       "Nov 09 13:52:57: "
   838 vmware-mks GIO   fd 4 wrote 4 bytes
       "MKS|"
   838 vmware-mks GIO   fd 4 wrote 187 bytes
       "Msg_Post Error: msg.vmmonPosix.badDriver
        Could not get vmmon module version: Bad address.
        You have an incorrect version of the `vmmon' kernel module.
        Try reinstalling VMware Workstation.
       "
   838 vmware-mks RET   writev 208/0xd0

Further investigation, comparing the sources of the vmmon loadable module for
linux that get distributed with the 3.0.0 beta release with the netbsd module
written by Frank for the VMware 2.x distribution reveals that the former
defines an ioctl called IOCTLCMD_VERSION but the latter doesn't.  There may be
other differences - I didn't look any further.

So it appears that the interface provided by vmmon to the vmware userlevel code
has changed and (at least some degree of) re-porting will be necessary.  Is
anyone (from Wasabi?) looking at doing this already?  If not, I could take a
look at it, although it will probably take me a while to figure out how it's
all supposed to works...

Duncan