PCHAOS’s VMWare 10.0.0.5 Compile/Install Errors in Fedora 21

Pchaos informed me that my original patch didn’t work.  From his original source, I created this patch:

Switch to root and install the necessary packages which may be missing.

su -
yum install kernel-dev* gcc*  patch

Create these patch files with vi or your text editor of choice:

vi /usr/lib/vmware/modules/source/pchaos_vmnet.patch
+++ vmnet-only/netif.c  2015-02-15 11:31:28.897708255 -0500
@@ -149,7 +149,7 @@
    memcpy(deviceName, devName, sizeof deviceName);
    NULL_TERMINATE_STRING(deviceName);

-   dev = alloc_netdev(sizeof *netIf, deviceName, VNetNetIfSetup);
+   dev = alloc_netdev(sizeof *netIf, deviceName, NET_NAME_UNKNOWN, VNetNetIfSetup);
    if (!dev) {
       retval = -ENOMEM;
       goto out;
vi /usr/lib/vmware/modules/source/pchaos_vsock.patch
+++ vsock-only/linux/notifyQState.c     2015-02-15 11:43:23.914571581 -0500
@@ -164,7 +164,7 @@
                      struct sockaddr_vm *dst,    // IN: unused
                      struct sockaddr_vm *src)    // IN: unused
 {
-   sk->sk_data_ready(sk, 0);
+   sk->sk_data_ready(sk);
 }


@@ -566,7 +566,7 @@
       }

       /* See the comment in VSockVmciNotifyPktSendPostEnqueue */
-   sk->sk_data_ready(sk, 0);
+      sk->sk_data_ready(sk);
    }

    return err;

+++ vsock-only/linux/notify.c   2015-02-15 11:45:39.099251920 -0500
@@ -516,7 +516,7 @@
    PKT_FIELD(vsk, sentWaitingRead) = FALSE;
 #endif

-   sk->sk_data_ready(sk, 0);
+   sk->sk_data_ready(sk);
 }

Move to the VMWare directory

cd /usr/lib/vmware/modules/source

Make a copy of the source

cp vmnet.tar vmnet.tar.orig
cp vsock.tar vsock.tar.orig

Untar the VMWare source

tar -xf vmnet.tar
tar -xf vsock.tar

Apply patches

patch -p0 < pchaos_vmnet.patch
patch -p0 < pchaos_vsock_.patch

Tar the source

tar -cf vmnet.tar vmnet-only/
tar -cf vsock.tar vsock-only/

Run the VMWare intaller

# vmware-modconfig --console --install-all

 

Here’s the make output. There are a couple of ignorable redefinition warnings.
[dave@localhost vmnet-only]$ make
Using 2.6.x kernel build system.
make -C /lib/modules/3.18.5-201.fc21.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory ‘/usr/src/kernels/3.18.5-201.fc21.x86_64’
  CC [M]  /home/dave/Downloads/source/vmnet-only/netif.o
In file included from include/linux/pci.h:34:0,
                 from /home/dave/Downloads/source/vmnet-only/compat_netdevice.h:27,
                 from /home/dave/Downloads/source/vmnet-only/netif.c:43:
include/linux/pci_ids.h:2248:0: warning: “PCI_VENDOR_ID_VMWARE” redefined
 #define PCI_VENDOR_ID_VMWARE  0x15ad
 ^
In file included from /home/dave/Downloads/source/vmnet-only/net.h:38:0,
                 from /home/dave/Downloads/source/vmnet-only/vnetInt.h:26,
                 from /home/dave/Downloads/source/vmnet-only/netif.c:42:
/home/dave/Downloads/source/vmnet-only/vm_device_version.h:56:0: note: this is the location of the previous definition
 #define PCI_VENDOR_ID_VMWARE                    0x15AD
 ^
  CC [M]
/home/dave/Downloads/source/vmnet-only/bridge.o
In file included from /home/dave/Downloads/source/vmnet-only/net.h:38:0,
                 from /home/dave/Downloads/source/vmnet-only/vnetInt.h:26,
                 from /home/dave/Downloads/source/vmnet-only/bridge.c:52:
/home/dave/Downloads/source/vmnet-only/vm_device_version.h:56:0: warning: “PCI_VENDOR_ID_VMWARE” redefined
 #define PCI_VENDOR_ID_VMWARE                    0x15AD
 ^
In file included from include/linux/pci.h:34:0,
                 from /home/dave/Downloads/source/vmnet-only/compat_netdevice.h:27,
                 from /home/dave/Downloads/source/vmnet-only/bridge.c:51:
include/linux/pci_ids.h:2248:0: note: this is the location of the previous definition
 #define PCI_VENDOR_ID_VMWARE  0x15ad
 ^
  CC [M]  /home/dave/Downloads/source/vmnet-only/procfs.o
  CC [M]  /home/dave/Downloads/source/vmnet-only/smac_compat.o
  CC [M]  /home/dave/Downloads/source/vmnet-only/smac.o
  CC [M]  /home/dave/Downloads/source/vmnet-only/vnetEvent.o
  CC [M]  /home/dave/Downloads/source/vmnet-only/vnetUserListener.o
  LD [M]  /home/dave/Downloads/source/vmnet-only/vmnet.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/dave/Downloads/source/vmnet-only/vmnet.mod.o
  LD [M]  /home/dave/Downloads/source/vmnet-only/vmnet.ko
make[1]: Leaving directory ‘/usr/src/kernels/3.18.5-201.fc21.x86_64’
make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1]: Entering directory ‘/home/dave/Downloads/source/vmnet-only’
make[1]: ‘postbuild’ is up to date.
make[1]: Leaving directory ‘/home/dave/Downloads/source/vmnet-only’
cp -f vmnet.ko ./../vmnet.o
[dave@localhost vmnet-only]$ 
[dave@localhost vsock-only]$ make
Using 2.6.x kernel build system.
make -C /lib/modules/3.18.5-201.fc21.x86_64/build/include/.. SUBDIRS=$PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= modules
make[1]: Entering directory ‘/usr/src/kernels/3.18.5-201.fc21.x86_64’
  CC [M]  /home/dave/Downloads/source/vsock-only/linux/notify.o
  CC [M]  /home/dave/Downloads/source/vsock-only/driverLog.o
  LD [M]  /home/dave/Downloads/source/vsock-only/vsock.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/dave/Downloads/source/vsock-only/vsock.mod.o
  LD [M]  /home/dave/Downloads/source/vsock-only/vsock.ko
make[1]: Leaving directory ‘/usr/src/kernels/3.18.5-201.fc21.x86_64’
make -C $PWD SRCROOT=$PWD/. \
  MODULEBUILDDIR= postbuild
make[1]: Entering directory ‘/home/dave/Downloads/source/vsock-only’
make[1]: ‘postbuild’ is up to date.
make[1]: Leaving directory ‘/home/dave/Downloads/source/vsock-only’
cp -f vsock.ko ./../vsock.o
[dave@localhost vsock-only]$

0 Comments on “PCHAOS’s VMWare 10.0.0.5 Compile/Install Errors in Fedora 21

Leave a Reply