summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBilly DeVincentis <billydv1@verizon.net>2012-09-01 09:12:38 -0400
committerVadim Kuznetsov <vadimk@gentoo.org>2012-09-01 09:12:38 -0400
commit10b4b3b920e083941a3a2f571c895d9cb587e676 (patch)
tree5e2e185d34a26cfc1d44050fcbe67add57379a5a /app-emulation/vmware-modules
parentvmware desktop 9 version bump (Masked) (diff)
downloadvmware-10b4b3b920e083941a3a2f571c895d9cb587e676.tar.gz
vmware-10b4b3b920e083941a3a2f571c895d9cb587e676.tar.bz2
vmware-10b4b3b920e083941a3a2f571c895d9cb587e676.zip
Bug 432918
Author: Billy DeVincentis <billydv1@verizon.net> new file: 271-vmmon.patch
Diffstat (limited to 'app-emulation/vmware-modules')
-rw-r--r--app-emulation/vmware-modules/files/271-vmmon.patch44
1 files changed, 44 insertions, 0 deletions
diff --git a/app-emulation/vmware-modules/files/271-vmmon.patch b/app-emulation/vmware-modules/files/271-vmmon.patch
new file mode 100644
index 0000000..f197964
--- /dev/null
+++ b/app-emulation/vmware-modules/files/271-vmmon.patch
@@ -0,0 +1,44 @@
+diff -ru source900/vmmon-only/linux/hostif.c source/vmmon-only/linux/hostif.c
+--- source900/vmmon-only/linux/hostif.c 2012-07-23 18:18:55.000000000 +0900
++++ source/vmmon-only/linux/hostif.c 2012-08-03 16:20:23.200420885 +0900
+@@ -48,6 +48,7 @@
+ #include <linux/smp_lock.h>
+ #endif
+
++#include <asm/asm.h>
+ #include <asm/io.h>
+ #include <asm/uaccess.h>
+ #include <linux/mc146818rtc.h>
+@@ -3586,31 +3587,14 @@
+ {
+ int ret;
+ unsigned low, high;
+-#if defined(VM_X86_64)
+ asm volatile("2: rdmsr ; xor %0,%0\n"
+ "1:\n\t"
+ ".section .fixup,\"ax\"\n\t"
+ "3: mov %4,%0 ; jmp 1b\n\t"
+ ".previous\n\t"
+- ".section __ex_table,\"a\"\n\t"
+- ".balign 8\n"
+- ".quad 2b,3b\n"
+- ".previous\n"
++ _ASM_EXTABLE(2b,3b)
+ : "=r"(ret), "=a"(low), "=d"(high)
+ : "c"(msr), "i"(-EFAULT), "1"(0), "2"(0)); // init eax/edx to 0
+-#else
+- asm volatile("2: rdmsr ; xor %0,%0\n"
+- "1:\n\t"
+- ".section .fixup,\"ax\"\n\t"
+- "3: mov %4,%0 ; jmp 1b\n\t"
+- ".previous\n\t"
+- ".section __ex_table,\"a\"\n"
+- ".balign 4\n"
+- ".long 2b,3b\n"
+- ".previous\n"
+- : "=r"(ret), "=a"(low), "=d"(high)
+- : "c"(msr), "i"(-EFAULT), "1"(0), "2"(0)); // init eax/edx to 0
+-#endif // VM_X86_64
+ *val = (low | ((u64)(high) << 32));
+
+ return ret;