summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVadim Kuznetsov <vadimk@gentoo.org>2012-12-09 14:29:05 +0000
committerVadim Kuznetsov <vadimk@gentoo.org>2012-12-09 14:29:05 +0000
commit58172b4ad1a62083b72bb7258d88c3cc461dc5e8 (patch)
treedc8ff870efb138a333eb50251383c321d43f073e /app-emulation/vmware-modules
parentStable for amd64, wrt bug #446522 (diff)
downloadhistorical-58172b4ad1a62083b72bb7258d88c3cc461dc5e8.tar.gz
historical-58172b4ad1a62083b72bb7258d88c3cc461dc5e8.tar.bz2
historical-58172b4ad1a62083b72bb7258d88c3cc461dc5e8.zip
vmware desktop 9.0.1 version bump.bugs 432918, 443022
Package-Manager: portage-2.1.11.34/cvs/Linux x86_64
Diffstat (limited to 'app-emulation/vmware-modules')
-rw-r--r--app-emulation/vmware-modules/ChangeLog11
-rw-r--r--app-emulation/vmware-modules/Manifest8
-rw-r--r--app-emulation/vmware-modules/files/271-apic.patch12
-rw-r--r--app-emulation/vmware-modules/files/271-makefile-include.patch65
-rw-r--r--app-emulation/vmware-modules/files/271-makefile-kernel-dir.patch85
-rw-r--r--app-emulation/vmware-modules/files/271-netdevice.patch24
-rw-r--r--app-emulation/vmware-modules/files/271-vmmon.patch44
-rw-r--r--app-emulation/vmware-modules/vmware-modules-271.1.ebuild79
8 files changed, 325 insertions, 3 deletions
diff --git a/app-emulation/vmware-modules/ChangeLog b/app-emulation/vmware-modules/ChangeLog
index 377e976ac2f6..3d24ae4f5d2f 100644
--- a/app-emulation/vmware-modules/ChangeLog
+++ b/app-emulation/vmware-modules/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for app-emulation/vmware-modules
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.97 2012/06/17 13:09:10 vadimk Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.98 2012/12/09 14:29:00 vadimk Exp $
+
+*vmware-modules-271.1 (09 Dec 2012)
+
+ 09 Dec 2012; Vadim Kuznetsov vadimk@gentoo.org +files/271-apic.patch,
+ +files/271-makefile-include.patch, +files/271-makefile-kernel-dir.patch,
+ +files/271-netdevice.patch, +files/271-vmmon.patch,
+ +vmware-modules-271.1.ebuild:
+ vmware desktop 9.0.1 version bump.bugs 432918, 443022
*vmware-modules-238.6 (17 Jun 2012)
*vmware-modules-264.4 (17 Jun 2012)
@@ -556,4 +564,3 @@
+files/patches/000_all_makefile-include-directory.patch, +metadata.xml,
+vmware-modules-1.0.0.15.ebuild:
Initial commit of vmware-modules, as used by several vmware-packages.
-
diff --git a/app-emulation/vmware-modules/Manifest b/app-emulation/vmware-modules/Manifest
index 744b4fd28f81..3801e0ba36bc 100644
--- a/app-emulation/vmware-modules/Manifest
+++ b/app-emulation/vmware-modules/Manifest
@@ -14,8 +14,14 @@ AUX 264-jobserver.patch 2899 SHA256 131c606fdafe80f10151c667796270101f3b06ee70a1
AUX 264-makefile-include.patch 2501 SHA256 208121855fe18ecb279ff40f2833463559363461c2170d32c17040211a01f169 SHA512 c498c025c7eb025f6554cee683242dd73e4a284e4b28c95b75339f4f4a912a156acc1845881fbd78bf399c2092af7413f5d6c4782cd066527ea275518b411c1d WHIRLPOOL e03a6d7139ab7b309e0ca1527cb8b52a8f84f5f5d997a510305d2a6ccdd39f33b18c7276df8ac78d92d2a17a66236f582baaa5e374069d3912090544908a0338
AUX 264-makefile-kernel-dir.patch 2201 SHA256 780b79fcc6e8e836632f4542ac6c3da2d475b3ad1e2e88e1c51aea849a5172c7 SHA512 bb67ad9ec9152fb0192ba978566a6777bbf5d99ed8ccc6762c5af96615368d497d4183e42fbe78d8359f3d59749929742131e83e77edf649878767f0007babbf WHIRLPOOL 9932ed3ac03ead8507c348512a7a554dad28c2133347ce83dad4bc528228944559950258cb0f838bd8510d637988c2aba1105fa8fbea3a7852ed0df7af0aae49
AUX 264-netdevice.patch 833 SHA256 8f17ce379abda45a8f94e1dcd6e43367273f97f76edd41f9941beb3b1730a751 SHA512 b4ec7c1694968a1843f10e8bfe0dbfdc99bd3b5fc1391456d91a3648b848b82df681a0748d967afa19e728c4d19b79b6a3cb9fd3e15a52a5cab048a6ac9b06a9 WHIRLPOOL b0cabe2ec1b8ca52d427c02593d6057c98d4ed00c578d006de65460138c37a5be76a7938d85f5a35eb6f49ee5e34065ce62b60a51b0ccf021639a59b27aeac8a
+AUX 271-apic.patch 302 SHA256 60e7df881281fedcabe9ea4427b324b5e1142a1a2b6ab5236ac0843bd1051048 SHA512 003240043e5875d8c6425c146e708eb3c3d8be7fa48a2ac42b3071f00dafdbd51f7796d6f884298b135adccaf8a3eac32fd82b34a436a724da125dac5f6261d7 WHIRLPOOL 4707d0ddd532d5ec27ee2ba3d0fb25c1972bbc9f958b4b89f2f5cceffdf955ba88cd1be0cde046aa5fa688d52faeab5ccf3f03bbccb3e9b088abc37ad579e8e0
+AUX 271-makefile-include.patch 2501 SHA256 208121855fe18ecb279ff40f2833463559363461c2170d32c17040211a01f169 SHA512 c498c025c7eb025f6554cee683242dd73e4a284e4b28c95b75339f4f4a912a156acc1845881fbd78bf399c2092af7413f5d6c4782cd066527ea275518b411c1d WHIRLPOOL e03a6d7139ab7b309e0ca1527cb8b52a8f84f5f5d997a510305d2a6ccdd39f33b18c7276df8ac78d92d2a17a66236f582baaa5e374069d3912090544908a0338
+AUX 271-makefile-kernel-dir.patch 2153 SHA256 d76b1028d21b804836e36478d243cd7914435a34f3fe014058e0a9cc7a020653 SHA512 f18339dc8ac4c864b0c2fb234ad2db8f4638a5cd28e8fd11b5593c82107925b41b42e0d0acac52232a373780d79a3e397f70886534cdf889055e86cfda718f62 WHIRLPOOL 70c869bf4efab6843856addd0c5f5a295ed2fe38f9fc2a8ab2ca55523cd39cb92018d6bd0dac75658fa0f5260962c98f0bbd001593f3f11c2d204c693061c5b6
+AUX 271-netdevice.patch 833 SHA256 8f17ce379abda45a8f94e1dcd6e43367273f97f76edd41f9941beb3b1730a751 SHA512 b4ec7c1694968a1843f10e8bfe0dbfdc99bd3b5fc1391456d91a3648b848b82df681a0748d967afa19e728c4d19b79b6a3cb9fd3e15a52a5cab048a6ac9b06a9 WHIRLPOOL b0cabe2ec1b8ca52d427c02593d6057c98d4ed00c578d006de65460138c37a5be76a7938d85f5a35eb6f49ee5e34065ce62b60a51b0ccf021639a59b27aeac8a
+AUX 271-vmmon.patch 1581 SHA256 a4e89766232d0fc0456bb026978dedca17fcc62e247c8d65ae747b537e62fd13 SHA512 10aca60b959647c058fa69f851892a0245acad971028876da8d0a0e6002d0e8f6f2677fd0d9b140ee8a1a68cf2cfa3f8937a992f8b0e7e163aa6bcc17b75c979 WHIRLPOOL 28d1a34e89c7a995dbde48d87d8942c6f58e61f4a24189a1463c148c843fdf16cea7df497993eb6fb8d8de228f07ae8a44233bb63e42b54ab1f762e7e24889ba
AUX hardened.patch 5052 SHA256 191cf892bfb9a6288d110191de824bf6243bc6f48f1e62ab49f3582c7ade5af6 SHA512 52dcca8d9f689f0a0d0ca369c0c7ce0d177de3529d2d1325330eb5a9e940a55e8930bbbe7374793bdf29cbdefac9727e9eb21d00f81ad4f5eddba3a51597b7a5 WHIRLPOOL 539731bc36f3e292403f55d74c353deeb28baa312f726b36d2a6060adf3483dfa2ed011baf93eff941fa754ef62f4d6da86868c40550ee2292c4a711e061bde0
EBUILD vmware-modules-238.6.ebuild 2144 SHA256 eb5a16eeac76d7dc7a8ad956a15f58f00abb569ece76ecdf33be55320210b941 SHA512 0ba8080daf1eb8d6d66f383f212c0d6f7fc0a4f95568e5203f410b2d3f4b2ccc794e0a0bd350e7cbe1831a7a4ac23cc8472e438610a61c127358e68fab6a2f74 WHIRLPOOL 4a19512928635a7afae22d0906743bbc429adf2064729e14a5f3ed02dbdef242e1b042ca394ef0d5dee04e39a207a1031c026fd68a49a2402dc0414cc553ae0b
EBUILD vmware-modules-264.4.ebuild 2114 SHA256 45daaaba59d3cf2fc95573562735184b04cbc4df24474ef79618cfe63b3dd52e SHA512 9ff23ed5deffd955995039592d1722379f0c5a845f69f7e99d736ada2b28ed26c08700edcc48f49a798222a077b912cbd7ac5fd6baa59756b1af727484d10d1a WHIRLPOOL cd1f7114816bbb1d0bfb48713e5f489235eca1815bd5bb99d9efc267a96ae3a30f0ce4b6964be8df16115af8b9f4950d3f94b74af99e673f74e99fe167af7c8d
-MISC ChangeLog 21373 SHA256 ea086a9cf34f5c697665646b319819aba3ff1d7b95f1799ccd089d891972d851 SHA512 4a55d39dc2a23cec0b619c71f3f0e3128b9525a8083bdfaf6e075c18e90e14da5fc19c8aba426b6b22360dd53b2d081c0b5e6c78f3e98d75a98d48676d2923de WHIRLPOOL 2e83b354cf22dd6b4de2380d01e8669f05a2595e58b80452f60bec91ae6cf7786d88cff44d295fc635f22c33e4ba9e6f080d2737be872d5e755c8518e6399072
+EBUILD vmware-modules-271.1.ebuild 1966 SHA256 45f56dfdf1c949a5a5f0b32e4ed9dfbfbb51e25c6ed10a2f4884343fb700c4e9 SHA512 078f463d28be48d1bed5a03887e263a57894e6170256b0f70e37105d5295cf15c90d7ea716f697df2343e35543756a3aca653341a277cdb32f93d23f575cf742 WHIRLPOOL 1448c6c65a8a18bf95efdf2053a6d5fae76d8ddec012358e70e811c404acfd33e897547f81dfff2b8e370aa46fece2b234b38277600d4f6611d915bf550d81dc
+MISC ChangeLog 21699 SHA256 20bc59770a0058223817e7bd7813d12445d75a1aa390fd6d02198998f7c6f372 SHA512 8c184285f21a849e2570c63a6e86424413d08bfa6e16da41aa3b29d38d1b9cda36190e243454c6b9b87788215ee423183d7123653f3764378678290ae7826bcb WHIRLPOOL e52f700a247133d9835db2fd08a89318cfe8ab1c8655bf3acdd4eaabdfe08969790fe142a3c4cb7b0c5c47165d1ff11a260b1ab0bed2b931acb10bc2f1fc3708
MISC metadata.xml 382 SHA256 1d7ec802d18a99c79283d3c21dd905ca3e74738bf8627e16412a67ce0af50361 SHA512 484f74a5c3c8af11c77fce53ad44dcbfdc416156db505b95a4cca7b308d8d1337e7b18e7966a20d4c1f4e50495f021d11e534c69e885a65b44c15d3e910ec319 WHIRLPOOL f99943e161bd6e2b518c2e11c23c5ed5564ad9bc28ae406df0f08de22a2d5ec7f752361fc02ff18040884f79269f723594d40574584d269f3220a0e09aaee1e4
diff --git a/app-emulation/vmware-modules/files/271-apic.patch b/app-emulation/vmware-modules/files/271-apic.patch
new file mode 100644
index 000000000000..66cd45933246
--- /dev/null
+++ b/app-emulation/vmware-modules/files/271-apic.patch
@@ -0,0 +1,12 @@
+diff --git a/vmmon-only/linux/hostif.c b/vmmon-only/linux/hostif.c
+index f1f4b10..c43242f 100644
+--- a/vmmon-only/linux/hostif.c
++++ b/vmmon-only/linux/hostif.c
+@@ -55,6 +55,7 @@
+ #include <linux/kthread.h>
+ #include <linux/wait.h>
+
++#include <asm/apic.h>
+
+ #include "vmware.h"
+ #include "x86apic.h"
diff --git a/app-emulation/vmware-modules/files/271-makefile-include.patch b/app-emulation/vmware-modules/files/271-makefile-include.patch
new file mode 100644
index 000000000000..39c300030805
--- /dev/null
+++ b/app-emulation/vmware-modules/files/271-makefile-include.patch
@@ -0,0 +1,65 @@
+diff --git a/vmblock-only/Makefile.kernel b/vmblock-only/Makefile.kernel
+index ab7a727..e3ec9d2 100644
+--- a/vmblock-only/Makefile.kernel
++++ b/vmblock-only/Makefile.kernel
+@@ -19,7 +19,7 @@
+
+ INCLUDE += -I$(SRCROOT)/include
+
+-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE)
++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE)
+
+ EXTRA_CFLAGS += $(call vm_check_build, $(AUTOCONF_DIR)/cachecreate.c, -DVMW_KMEMCR_HAS_DTOR, )
+ EXTRA_CFLAGS += $(call vm_check_build, $(AUTOCONF_DIR)/cachector.c, -DVMW_KMEMCR_CTOR_HAS_3_ARGS, )
+diff --git a/vmci-only/Makefile.kernel b/vmci-only/Makefile.kernel
+index ba343ee..861ea83 100644
+--- a/vmci-only/Makefile.kernel
++++ b/vmci-only/Makefile.kernel
+@@ -21,7 +21,7 @@ CC_OPTS += -DVMCI
+
+ INCLUDE += -I$(SRCROOT)/shared -I$(SRCROOT)/common -I$(SRCROOT)/linux
+
+-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE)
++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE)
+
+ obj-m += $(DRIVER).o
+
+diff --git a/vmmon-only/Makefile.kernel b/vmmon-only/Makefile.kernel
+index 8770d1d..c4746c3 100644
+--- a/vmmon-only/Makefile.kernel
++++ b/vmmon-only/Makefile.kernel
+@@ -22,7 +22,7 @@ CC_OPTS += -DVMMON -DVMCORE
+ INCLUDE := -I$(SRCROOT)/include -I$(SRCROOT)/common -I$(SRCROOT)/linux \
+ -I$(SRCROOT)/vmcore
+
+-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE)
++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE)
+
+ EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/autoconf/smpcall.c, -DVMW_HAVE_SMP_CALL_3ARG, )
+
+diff --git a/vmnet-only/Makefile.kernel b/vmnet-only/Makefile.kernel
+index d1e3133..665d428 100644
+--- a/vmnet-only/Makefile.kernel
++++ b/vmnet-only/Makefile.kernel
+@@ -19,7 +19,7 @@
+
+ INCLUDE := -I$(SRCROOT)
+
+-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE)
++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE)
+ EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/netdev_has_net.c,-DVMW_NETDEV_HAS_NET, )
+ EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/netdev_has_dev_net.c,-DVMW_NETDEV_HAS_DEV_NET, )
+ EXTRA_CFLAGS += $(call vm_check_build, $(SRCROOT)/nfhook_uses_skb.c,-DVMW_NFHOOK_USES_SKB, )
+diff --git a/vsock-only/Makefile.kernel b/vsock-only/Makefile.kernel
+index b4629ee..264b8cb 100644
+--- a/vsock-only/Makefile.kernel
++++ b/vsock-only/Makefile.kernel
+@@ -25,7 +25,7 @@ INCLUDE += -I$(SRCROOT)/include
+ INCLUDE += -I$(SRCROOT)/linux
+ INCLUDE += -I$(SRCROOT)/common
+
+-EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE)
++EXTRA_CFLAGS := $(CC_OPTS) $(INCLUDE) $(LINUXINCLUDE)
+ EXTRA_CFLAGS += $(call vm_check_build, $(AUTOCONF_DIR)/netcreate_num_params.c, -DVMW_NETCREATE_KERNARG, )
+
+
diff --git a/app-emulation/vmware-modules/files/271-makefile-kernel-dir.patch b/app-emulation/vmware-modules/files/271-makefile-kernel-dir.patch
new file mode 100644
index 000000000000..1a647a3302d8
--- /dev/null
+++ b/app-emulation/vmware-modules/files/271-makefile-kernel-dir.patch
@@ -0,0 +1,85 @@
+diff --git a/vmblock-only/Makefile b/vmblock-only/Makefile
+index 2b81323..746c8b8 100644
+--- a/vmblock-only/Makefile
++++ b/vmblock-only/Makefile
+@@ -49,10 +49,10 @@ VM_UNAME = $(shell uname -r)
+ ifdef LINUXINCLUDE
+ HEADER_DIR = $(LINUXINCLUDE)
+ else
+-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
++HEADER_DIR = $(KERNEL_DIR)
+ endif
+
+-BUILD_DIR = $(HEADER_DIR)/..
++BUILD_DIR = $(KBUILD_OUTPUT)
+
+ DRIVER := vmblock
+ PRODUCT := ws
+diff --git a/vmci-only/Makefile b/vmci-only/Makefile
+index 8e9c5be..6ec828b 100644
+--- a/vmci-only/Makefile
++++ b/vmci-only/Makefile
+@@ -49,10 +49,10 @@ VM_UNAME = $(shell uname -r)
+ ifdef LINUXINCLUDE
+ HEADER_DIR = $(LINUXINCLUDE)
+ else
+-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
++HEADER_DIR = $(KERNEL_DIR)
+ endif
+
+-BUILD_DIR = $(HEADER_DIR)/..
++BUILD_DIR = $(KBUILD_OUTPUT)
+
+ DRIVER := vmci
+ PRODUCT := ws
+diff --git a/vmmon-only/Makefile b/vmmon-only/Makefile
+index 5bd867b..91a83d4 100644
+--- a/vmmon-only/Makefile
++++ b/vmmon-only/Makefile
+@@ -49,10 +49,10 @@ VM_UNAME = $(shell uname -r)
+ ifdef LINUXINCLUDE
+ HEADER_DIR = $(LINUXINCLUDE)
+ else
+-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
++HEADER_DIR = $(KERNEL_DIR)
+ endif
+
+-BUILD_DIR = $(HEADER_DIR)/..
++BUILD_DIR = $(KBUILD_OUTPUT)
+
+ DRIVER := vmmon
+ PRODUCT := @@PRODUCT@@
+diff --git a/vmnet-only/Makefile b/vmnet-only/Makefile
+index d4eb73c..c7c6d38 100644
+--- a/vmnet-only/Makefile
++++ b/vmnet-only/Makefile
+@@ -49,10 +49,10 @@ VM_UNAME = $(shell uname -r)
+ ifdef LINUXINCLUDE
+ HEADER_DIR = $(LINUXINCLUDE)
+ else
+-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
++HEADER_DIR = $(KERNEL_DIR)
+ endif
+
+-BUILD_DIR = $(HEADER_DIR)/..
++BUILD_DIR = $(KBUILD_OUTPUT)
+
+ DRIVER := vmnet
+ PRODUCT := @@PRODUCT@@
+diff --git a/vsock-only/Makefile b/vsock-only/Makefile
+index 93dd61d..9765696 100644
+--- a/vsock-only/Makefile
++++ b/vsock-only/Makefile
+@@ -49,10 +49,10 @@ VM_UNAME = $(shell uname -r)
+ ifdef LINUXINCLUDE
+ HEADER_DIR = $(LINUXINCLUDE)
+ else
+-HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
++HEADER_DIR = $(KERNEL_DIR)
+ endif
+
+-BUILD_DIR = $(HEADER_DIR)/..
++BUILD_DIR = $(KBUILD_OUTPUT)
+
+ DRIVER := vsock
+ PRODUCT := ws
diff --git a/app-emulation/vmware-modules/files/271-netdevice.patch b/app-emulation/vmware-modules/files/271-netdevice.patch
new file mode 100644
index 000000000000..35231a3205e3
--- /dev/null
+++ b/app-emulation/vmware-modules/files/271-netdevice.patch
@@ -0,0 +1,24 @@
+diff --git a/vmnet-only/compat_netdevice.h b/vmnet-only/compat_netdevice.h
+index 7a56304..9ff4548 100644
+--- a/vmnet-only/compat_netdevice.h
++++ b/vmnet-only/compat_netdevice.h
+@@ -47,6 +47,19 @@
+ # define net_device device
+ #endif
+
++/* it looks like these have been removed from the kernel 3.1
++ * probably because the "transition" is considered complete.
++ * so to keep this source compatible we just redefine them like they were
++ * previously
++ */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 1, 0)
++#define HAVE_ALLOC_NETDEV /* feature macro: alloc_xxxdev
++ functions are available. */
++#define HAVE_FREE_NETDEV /* free_netdev() */
++#define HAVE_NETDEV_PRIV /* netdev_priv() */
++#define HAVE_NETIF_QUEUE
++#define HAVE_NET_DEVICE_OPS
++#endif
+
+ /*
+ * SET_MODULE_OWNER appeared sometime during 2.3.x. It was setting
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 000000000000..f1979641a4d6
--- /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;
diff --git a/app-emulation/vmware-modules/vmware-modules-271.1.ebuild b/app-emulation/vmware-modules/vmware-modules-271.1.ebuild
new file mode 100644
index 000000000000..0110e10b3a44
--- /dev/null
+++ b/app-emulation/vmware-modules/vmware-modules-271.1.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-271.1.ebuild,v 1.1 2012/12/09 14:29:00 vadimk Exp $
+
+EAPI="4"
+
+inherit eutils flag-o-matic linux-info linux-mod user versionator
+
+PV_MAJOR=$(get_major_version)
+PV_MINOR=$(get_version_component_range 2)
+
+DESCRIPTION="VMware kernel modules"
+HOMEPAGE="http://www.vmware.com/"
+
+SRC_URI=""
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="pax_kernel"
+
+RDEPEND=""
+DEPEND="${RDEPEND}
+ || ( =app-emulation/vmware-player-5.0.${PV_MINOR}*
+ =app-emulation/vmware-workstation-9.0.${PV_MINOR}* )"
+
+S=${WORKDIR}
+
+pkg_setup() {
+ CONFIG_CHECK="~HIGH_RES_TIMERS"
+ if kernel_is ge 2 6 37 && kernel_is lt 2 6 39; then
+ CONFIG_CHECK="${CONFIG_CHECK} BKL"
+ fi
+
+ linux-info_pkg_setup
+
+ linux-mod_pkg_setup
+
+ VMWARE_GROUP=${VMWARE_GROUP:-vmware}
+
+ VMWARE_MODULE_LIST="vmblock vmci vmmon vmnet vsock"
+ VMWARE_MOD_DIR="${PN}-${PVR}"
+
+ BUILD_TARGETS="auto-build KERNEL_DIR=${KERNEL_DIR} KBUILD_OUTPUT=${KV_OUT_DIR}"
+
+ enewgroup "${VMWARE_GROUP}"
+ filter-flags -mfpmath=sse
+
+ for mod in ${VMWARE_MODULE_LIST}; do
+ MODULE_NAMES="${MODULE_NAMES} ${mod}(misc:${S}/${mod}-only)"
+ done
+}
+
+src_unpack() {
+ cd "${S}"
+ for mod in ${VMWARE_MODULE_LIST}; do
+ tar -xf /opt/vmware/lib/vmware/modules/source/${mod}.tar
+ done
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${PV_MAJOR}-makefile-kernel-dir.patch"
+ epatch "${FILESDIR}/${PV_MAJOR}-makefile-include.patch"
+ epatch "${FILESDIR}/${PV_MAJOR}-netdevice.patch"
+ use pax_kernel && epatch "${FILESDIR}/hardened.patch"
+ epatch "${FILESDIR}/${PV_MAJOR}-apic.patch"
+}
+
+src_install() {
+ linux-mod_src_install
+ local udevrules="${T}/60-vmware.rules"
+ cat > "${udevrules}" <<-EOF
+ KERNEL=="vmci", GROUP="vmware", MODE=660
+ KERNEL=="vmmon", GROUP="vmware", MODE=660
+ KERNEL=="vsock", GROUP="vmware", MODE=660
+ EOF
+ insinto /lib/udev/rules.d/
+ doins "${udevrules}"
+}