Package Details: vmware-modules-dkms 308.0-15

Git Clone URL: https://aur.archlinux.org/vmware-modules-dkms.git (read-only)
Package Base: vmware-modules-dkms
Description: VMware Workstation kernel modules (DKMS)
Upstream URL: http://www.vmware.com/
Licenses: GPL2
Conflicts: open-vm-tools-modules
Submitter: Raansu
Maintainer: SwooshyCueb
Last Packager: SwooshyCueb
Votes: 14
Popularity: 0.020733
First Submitted: 2015-09-21 08:45
Last Updated: 2017-03-21 00:31

Latest Comments

swordfeng commented on 2017-05-16 01:51

I reported this issue here: https://communities.vmware.com/message/2675618#2675618
The kernel changed the meaning of the third parameter of 'VNetBridgeNotify' since 3.11.

swordfeng commented on 2017-05-13 18:30

I think (not tested yet) there's an issue in vmnet/bridge.c:

--- bridge.c 2017-05-14 02:24:23.764324763 +0800
+++ bridge_new.c 2017-05-14 02:24:20.494352085 +0800
@@ -1146,7 +1146,7 @@
void *data) // IN: device pertaining to event
{
VNetBridge *bridge = list_entry(this, VNetBridge, notifier);
- struct net_device *dev = (struct net_device *) data;
+ struct net_device *dev = netdev_notifier_info_to_dev(data);

switch (msg) {
case NETDEV_UNREGISTER:


and seems that this exists for a long time

SwooshyCueb commented on 2017-03-12 15:15

I am currently out of town, but I'll see if I can't update this at some point in the next few days

swordfeng commented on 2017-03-12 12:56

It seems that `generic_readlink` in vmblock should be changed to `vfs_readlink` for kernel version >= 4.10

TrakTrakTrugui commented on 2017-01-30 00:50

Thank you, works nicely in 4.9.6-1-ARCH

aasoft commented on 2017-01-29 03:04

The following successfully compiled for me on 4.9.6-1-ARCH.

Untar vmmon.tar and vmnet.tar, apply the patches below, tar them back.

# tar xpf vmmon.tar
# tar xpf vmnet.tar

# mv vmmon.tar vmmon.tar.old
# mv vmnet.tar vmnet.tar.old

# tar cf vmmon.tar vmmon-only
# tar cf vmnet.tar vmnet-only

Patches:
################################

diff -u -r vmmon-only/linux/hostif.c vmmon-new/linux/hostif.c
--- vmmon-only/linux/hostif.c 2016-11-11 23:15:51.000000000 -0800
+++ vmmon-new/linux/hostif.c 2017-01-28 18:56:51.665442691 -0800
@@ -1163,7 +1163,7 @@

down_read(&current->mm->mmap_sem);
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
- retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
+ retval = get_user_pages((unsigned long)uvAddr, numPages, 0, ppages, NULL);
#else
retval = get_user_pages(current, current->mm, (unsigned long)uvAddr,
numPages, 0, 0, ppages, NULL);


diff -u -r vmnet-only/userif.c vmnet-new/userif.c
--- vmnet-only/userif.c 2016-11-11 23:15:55.000000000 -0800
+++ vmnet-new/userif.c 2017-01-28 18:57:00.872006425 -0800
@@ -114,7 +114,7 @@

down_read(&current->mm->mmap_sem);
#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 6, 0)
- retval = get_user_pages(addr, 1, 1, 0, &page, NULL);
+ retval = get_user_pages(addr, 1, FOLL_WRITE, &page, NULL);
#else
retval = get_user_pages(current, current->mm, addr,
1, 1, 0, &page, NULL);

SwooshyCueb commented on 2017-01-23 18:58

Still having problems with vsock's symbol versions. If anyone has any elegant solutions I'm open for ideas.

SwooshyCueb commented on 2017-01-23 18:35

updated for 4.9

mobad commented on 2017-01-20 02:52

Doesn't work with 4.9.

/tmp/modconfig-QCwpbE/vmmon-only/linux/hostif.c: In function ‘HostIFGetUserPages’:
/tmp/modconfig-QCwpbE/vmmon-only/linux/hostif.c:1166:67: error: passing argument 5 of ‘get_user_pages’ from incompatible pointer type [-Werror=incompatible-pointer-types]
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
^~~~~~
In file included from /tmp/modconfig-QCwpbE/vmmon-only/./include/compat_page.h:23:0,
from /tmp/modconfig-QCwpbE/vmmon-only/linux/hostif.c:32:
./include/linux/mm.h:1280:6: note: expected ‘struct vm_area_struct **’ but argument is of type ‘struct page **’
long get_user_pages(unsigned long start, unsigned long nr_pages,
^~~~~~~~~~~~~~
/tmp/modconfig-QCwpbE/vmmon-only/linux/hostif.c:1166:13: error: too many arguments to function ‘get_user_pages’
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);

To fix the following needs to be changed in many places:
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, 0, ppages, NULL);
to:
retval = get_user_pages((unsigned long)uvAddr, numPages, 0, ppages, NULL);

The "write" parameter was removed.

Also, could you remove "linux" from makedepends as it forces people using other kernels like "linux-ck" to install "linux".

Most other dkms modules I've seen don't have "linux" as a makedepends.

SwooshyCueb commented on 2016-09-21 21:32

Okay it looks like there's a problem with the vsock and vmblock modules. They build fine, but modprobe fails. It might be a day or two before I can look into this.

All comments