summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/vmware-modules')
-rw-r--r--app-emulation/vmware-modules/files/308-4.12-00-vmblock-current_time.patch11
-rw-r--r--app-emulation/vmware-modules/files/308-4.12-01-vmci-do_once.patch18
-rw-r--r--app-emulation/vmware-modules/files/308-4.12-02-vmci-pci_enable_msix.patch17
-rw-r--r--app-emulation/vmware-modules/vmware-modules-308.5.7.ebuild3
4 files changed, 49 insertions, 0 deletions
diff --git a/app-emulation/vmware-modules/files/308-4.12-00-vmblock-current_time.patch b/app-emulation/vmware-modules/files/308-4.12-00-vmblock-current_time.patch
new file mode 100644
index 0000000..f39b862
--- /dev/null
+++ b/app-emulation/vmware-modules/files/308-4.12-00-vmblock-current_time.patch
@@ -0,0 +1,11 @@
+--- ./vmblock-only/linux/inode.c 2017-07-06 11:47:09.496190133 -0600
++++ ./vmblock-only/linux/inode.c.new 2017-07-06 11:55:53.212410091 -0600
+@@ -156,7 +156,7 @@
+ inode->i_mode = S_IFLNK | S_IRWXUGO;
+ inode->i_size = INODE_TO_IINFO(inode)->nameLen;
+ inode->i_version = 1;
+- inode->i_atime = inode->i_mtime = inode->i_ctime = CURRENT_TIME;
++ inode->i_atime = inode->i_mtime = inode->i_ctime = current_time(inode);
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 10, 0)
+ inode->i_uid = inode->i_gid = 0;
+ #else
diff --git a/app-emulation/vmware-modules/files/308-4.12-01-vmci-do_once.patch b/app-emulation/vmware-modules/files/308-4.12-01-vmci-do_once.patch
new file mode 100644
index 0000000..e91f047
--- /dev/null
+++ b/app-emulation/vmware-modules/files/308-4.12-01-vmci-do_once.patch
@@ -0,0 +1,18 @@
+--- vmci-only/shared/vm_basic_defs.h 2017-06-19 20:29:40.000000000 -0600
++++ vmci-only/shared/vm_basic_defs.h.new 2017-07-06 12:11:37.146017203 -0600
+@@ -720,6 +720,7 @@
+ lfMessageFont)
+
+ /* This is not intended to be thread-safe. */
++#ifndef DO_ONCE
+ #define DO_ONCE(code) \
+ do { \
+ static Bool _doOnceDone = FALSE; \
+@@ -728,6 +729,7 @@
+ code; \
+ } \
+ } while (0)
++#endif
+
+ /*
+ * Bug 827422 and 838523.
diff --git a/app-emulation/vmware-modules/files/308-4.12-02-vmci-pci_enable_msix.patch b/app-emulation/vmware-modules/files/308-4.12-02-vmci-pci_enable_msix.patch
new file mode 100644
index 0000000..a4ce13a
--- /dev/null
+++ b/app-emulation/vmware-modules/files/308-4.12-02-vmci-pci_enable_msix.patch
@@ -0,0 +1,17 @@
+--- ./vmci-only/linux/driver.c 2017-07-06 12:12:38.860458601 -0600
++++ ./vmci-only/linux/driver.c.new 2017-07-06 12:21:09.986139888 -0600
+@@ -1726,11 +1726,11 @@
+ vmci_dev.msix_entries[i].vector = i;
+ }
+
+- result = pci_enable_msix(pdev, vmci_dev.msix_entries, VMCI_MAX_INTRS);
++ result = pci_enable_msix_exact(pdev, vmci_dev.msix_entries, VMCI_MAX_INTRS);
+ if (!result) {
+ vmci_dev.exclusive_vectors = TRUE;
+- } else if (result > 0) {
+- result = pci_enable_msix(pdev, vmci_dev.msix_entries, 1);
++ } else {
++ result = pci_enable_msix_exact(pdev, vmci_dev.msix_entries, 1);
+ }
+ return result;
+ }
diff --git a/app-emulation/vmware-modules/vmware-modules-308.5.7.ebuild b/app-emulation/vmware-modules/vmware-modules-308.5.7.ebuild
index 351dec4..ad6b45c 100644
--- a/app-emulation/vmware-modules/vmware-modules-308.5.7.ebuild
+++ b/app-emulation/vmware-modules/vmware-modules-308.5.7.ebuild
@@ -107,6 +107,9 @@ src_prepare() {
kernel_is ge 4 10 0 && epatch "${FILESDIR}/${PV_MAJOR}-4.10-00-generic_readlink.patch"
kernel_is ge 4 11 0 && epatch "${FILESDIR}/${PV_MAJOR}-4.11-00-missing-headers.patch"
kernel_is ge 4 11 0 && epatch "${FILESDIR}/${PV_MAJOR}-4.11-01-vsock-lockdep.patch"
+ kernel_is ge 4 12 0 && epatch "${FILESDIR}/${PV_MAJOR}-4.12-00-vmblock-current_time.patch"
+ kernel_is ge 4 12 0 && epatch "${FILESDIR}/${PV_MAJOR}-4.12-01-vmci-do_once.patch"
+ kernel_is ge 4 12 0 && epatch "${FILESDIR}/${PV_MAJOR}-4.12-02-vmci-pci_enable_msix.patch"
# Allow user patches so they can support RC kernels and whatever else
epatch_user