summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-emulation/vmware-modules/files/279-3.15-00-readlink.patch12
-rw-r--r--app-emulation/vmware-modules/files/279-3.15-01-vsock.patch43
-rw-r--r--app-emulation/vmware-modules/vmware-modules-279.2-r1.ebuild3
3 files changed, 57 insertions, 1 deletions
diff --git a/app-emulation/vmware-modules/files/279-3.15-00-readlink.patch b/app-emulation/vmware-modules/files/279-3.15-00-readlink.patch
new file mode 100644
index 0000000..36be37f
--- /dev/null
+++ b/app-emulation/vmware-modules/files/279-3.15-00-readlink.patch
@@ -0,0 +1,12 @@
+diff -rupN vmblock-only/linux/inode.c vmblock-only/linux/inode.c
+--- vmblock-only/linux/inode.c 2014-10-05 23:20:14.545218357 -0400
++++ vmblock-only/linux/inode.c 2014-10-05 23:33:01.549259933 -0400
+@@ -178,7 +178,7 @@ InodeOpReadlink(struct dentry *dentry,
+ return -EINVAL;
+ }
+
+- return vfs_readlink(dentry, buffer, buflen, iinfo->name);
++ return readlink_copy(buffer, buflen, iinfo->name);
+ }
+
+
diff --git a/app-emulation/vmware-modules/files/279-3.15-01-vsock.patch b/app-emulation/vmware-modules/files/279-3.15-01-vsock.patch
new file mode 100644
index 0000000..a880a75
--- /dev/null
+++ b/app-emulation/vmware-modules/files/279-3.15-01-vsock.patch
@@ -0,0 +1,43 @@
+diff -rupN vsock-only/linux/notify.c vsock-only.new/linux/notify.c
+--- vsock-only/linux/notify.c 2013-11-05 23:33:27.000000000 -0500
++++ vsock-only.new/linux/notify.c 2014-10-05 23:46:47.943304728 -0400
+@@ -515,8 +515,11 @@ VSockVmciHandleWrote(struct sock *sk,
+ vsk = vsock_sk(sk);
+ PKT_FIELD(vsk, sentWaitingRead) = FALSE;
+ #endif
+-
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0)
++ sk->sk_data_ready(sk);
++#else
+ sk->sk_data_ready(sk, 0);
++#endif
+ }
+
+
+diff -rupN vsock-only/linux/notifyQState.c vsock-only.new/linux/notifyQState.c
+--- vsock-only/linux/notifyQState.c 2013-11-05 23:33:27.000000000 -0500
++++ vsock-only.new/linux/notifyQState.c 2014-10-05 23:46:33.231303931 -0400
+@@ -164,7 +164,11 @@ VSockVmciHandleWrote(struct sock *sk,
+ struct sockaddr_vm *dst, // IN: unused
+ struct sockaddr_vm *src) // IN: unused
+ {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0)
++ sk->sk_data_ready(sk);
++#else
+ sk->sk_data_ready(sk, 0);
++#endif
+ }
+
+
+@@ -566,7 +570,11 @@ VSockVmciNotifyPktRecvPostDequeue(struct
+ }
+
+ /* See the comment in VSockVmciNotifyPktSendPostEnqueue */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 15, 0)
++ sk->sk_data_ready(sk);
++#else
+ sk->sk_data_ready(sk, 0);
++#endif
+ }
+
+ return err;
diff --git a/app-emulation/vmware-modules/vmware-modules-279.2-r1.ebuild b/app-emulation/vmware-modules/vmware-modules-279.2-r1.ebuild
index 131d93a..e5875a7 100644
--- a/app-emulation/vmware-modules/vmware-modules-279.2-r1.ebuild
+++ b/app-emulation/vmware-modules/vmware-modules-279.2-r1.ebuild
@@ -92,7 +92,8 @@ src_prepare() {
kernel_is ge 3 11 0 && epatch "${FILESDIR}/${PV_MAJOR}-filldir.patch"
kernel_is ge 3 13 0 && epatch "${FILESDIR}/${PV_MAJOR}-3.13-00-vmnet.patch"
-
+ kernel_is ge 3 15 0 && epatch "${FILESDIR}/${PV_MAJOR}-3.15-00-readlink.patch"
+ kernel_is ge 3 15 0 && epatch "${FILESDIR}/${PV_MAJOR}-3.15-01-vsock.patch"
# Allow user patches so they can support RC kernels and whatever else
epatch_user