summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Hüttel <dilfridge@gentoo.org>2014-06-07 22:06:57 +0000
committerAndreas K. Hüttel <dilfridge@gentoo.org>2014-06-07 22:06:57 +0000
commitb9cb570443acd67877d6779db9551aabf76803e8 (patch)
treeaf10aff9fe260c1374b62402b73bae8ad5ae459e /app-emulation/vmware-modules
parentRemoval of dev-ruby/fastthread - No-op in ruby19. (diff)
downloadgentoo-2-b9cb570443acd67877d6779db9551aabf76803e8.tar.gz
gentoo-2-b9cb570443acd67877d6779db9551aabf76803e8.tar.bz2
gentoo-2-b9cb570443acd67877d6779db9551aabf76803e8.zip
Conditionally add patch for kernel 3.11, bug 483410
(Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key EBE6A336BE19039C!)
Diffstat (limited to 'app-emulation/vmware-modules')
-rw-r--r--app-emulation/vmware-modules/ChangeLog8
-rw-r--r--app-emulation/vmware-modules/files/271-filldir.patch91
-rw-r--r--app-emulation/vmware-modules/files/279-filldir.patch91
-rw-r--r--app-emulation/vmware-modules/vmware-modules-271.3.ebuild3
-rw-r--r--app-emulation/vmware-modules/vmware-modules-279.1-r1.ebuild3
-rw-r--r--app-emulation/vmware-modules/vmware-modules-279.2.ebuild3
6 files changed, 195 insertions, 4 deletions
diff --git a/app-emulation/vmware-modules/ChangeLog b/app-emulation/vmware-modules/ChangeLog
index dd5e3e4229de..d2b30fc05727 100644
--- a/app-emulation/vmware-modules/ChangeLog
+++ b/app-emulation/vmware-modules/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-emulation/vmware-modules
# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.117 2014/04/19 10:10:25 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.118 2014/06/07 22:06:57 dilfridge Exp $
+
+ 07 Jun 2014; Andreas K. Huettel <dilfridge@gentoo.org>
+ vmware-modules-271.3.ebuild, vmware-modules-279.1-r1.ebuild,
+ vmware-modules-279.2.ebuild, +files/271-filldir.patch,
+ +files/279-filldir.patch:
+ Conditionally add patch for kernel 3.11, bug 483410
*vmware-modules-279.2 (19 Apr 2014)
diff --git a/app-emulation/vmware-modules/files/271-filldir.patch b/app-emulation/vmware-modules/files/271-filldir.patch
new file mode 100644
index 000000000000..6eb1f315cd97
--- /dev/null
+++ b/app-emulation/vmware-modules/files/271-filldir.patch
@@ -0,0 +1,91 @@
+diff --git a/vmblock-only/linux/file.c b/vmblock-only/linux/file.c
+index d7ac1f6..5499169 100644
+--- a/vmblock-only/linux/file.c
++++ b/vmblock-only/linux/file.c
+@@ -38,46 +38,6 @@ typedef u64 inode_num_t;
+ typedef ino_t inode_num_t;
+ #endif
+
+-/* Specifically for our filldir_t callback */
+-typedef struct FilldirInfo {
+- filldir_t filldir;
+- void *dirent;
+-} FilldirInfo;
+-
+-
+-/*
+- *----------------------------------------------------------------------------
+- *
+- * Filldir --
+- *
+- * Callback function for readdir that we use in place of the one provided.
+- * This allows us to specify that each dentry is a symlink, but pass through
+- * everything else to the original filldir function.
+- *
+- * Results:
+- * Original filldir's return value.
+- *
+- * Side effects:
+- * Directory information gets copied to user's buffer.
+- *
+- *----------------------------------------------------------------------------
+- */
+-
+-static int
+-Filldir(void *buf, // IN: Dirent buffer passed from FileOpReaddir
+- const char *name, // IN: Dirent name
+- int namelen, // IN: len of dirent's name
+- loff_t offset, // IN: Offset
+- inode_num_t ino, // IN: Inode number of dirent
+- unsigned int d_type) // IN: Type of file
+-{
+- FilldirInfo *info = buf;
+-
+- /* Specify DT_LNK regardless */
+- return info->filldir(info->dirent, name, namelen, offset, ino, DT_LNK);
+-}
+-
+-
+ /* File operations */
+
+ /*
+@@ -166,11 +126,10 @@ FileOpOpen(struct inode *inode, // IN
+
+ static int
+ FileOpReaddir(struct file *file, // IN
+- void *dirent, // IN
+- filldir_t filldir) // IN
++ struct dir_context *ctx) // IN
+ {
+ int ret;
+- FilldirInfo info;
++
+ struct file *actualFile;
+
+ if (!file) {
+@@ -184,12 +143,10 @@ FileOpReaddir(struct file *file, // IN
+ return -EINVAL;
+ }
+
+- info.filldir = filldir;
+- info.dirent = dirent;
+-
+- actualFile->f_pos = file->f_pos;
+- ret = vfs_readdir(actualFile, Filldir, &info);
+- file->f_pos = actualFile->f_pos;
++ /* Ricky Wong Yung Fei:
++ * Manipulation of pos is now handled internally by iterate_dir().
++ */
++ ret = iterate_dir(actualFile, ctx);
+
+ return ret;
+ }
+@@ -237,7 +194,7 @@ FileOpRelease(struct inode *inode, // IN
+
+
+ struct file_operations RootFileOps = {
+- .readdir = FileOpReaddir,
++ .iterate = FileOpReaddir,
+ .open = FileOpOpen,
+ .release = FileOpRelease,
+ };
diff --git a/app-emulation/vmware-modules/files/279-filldir.patch b/app-emulation/vmware-modules/files/279-filldir.patch
new file mode 100644
index 000000000000..6eb1f315cd97
--- /dev/null
+++ b/app-emulation/vmware-modules/files/279-filldir.patch
@@ -0,0 +1,91 @@
+diff --git a/vmblock-only/linux/file.c b/vmblock-only/linux/file.c
+index d7ac1f6..5499169 100644
+--- a/vmblock-only/linux/file.c
++++ b/vmblock-only/linux/file.c
+@@ -38,46 +38,6 @@ typedef u64 inode_num_t;
+ typedef ino_t inode_num_t;
+ #endif
+
+-/* Specifically for our filldir_t callback */
+-typedef struct FilldirInfo {
+- filldir_t filldir;
+- void *dirent;
+-} FilldirInfo;
+-
+-
+-/*
+- *----------------------------------------------------------------------------
+- *
+- * Filldir --
+- *
+- * Callback function for readdir that we use in place of the one provided.
+- * This allows us to specify that each dentry is a symlink, but pass through
+- * everything else to the original filldir function.
+- *
+- * Results:
+- * Original filldir's return value.
+- *
+- * Side effects:
+- * Directory information gets copied to user's buffer.
+- *
+- *----------------------------------------------------------------------------
+- */
+-
+-static int
+-Filldir(void *buf, // IN: Dirent buffer passed from FileOpReaddir
+- const char *name, // IN: Dirent name
+- int namelen, // IN: len of dirent's name
+- loff_t offset, // IN: Offset
+- inode_num_t ino, // IN: Inode number of dirent
+- unsigned int d_type) // IN: Type of file
+-{
+- FilldirInfo *info = buf;
+-
+- /* Specify DT_LNK regardless */
+- return info->filldir(info->dirent, name, namelen, offset, ino, DT_LNK);
+-}
+-
+-
+ /* File operations */
+
+ /*
+@@ -166,11 +126,10 @@ FileOpOpen(struct inode *inode, // IN
+
+ static int
+ FileOpReaddir(struct file *file, // IN
+- void *dirent, // IN
+- filldir_t filldir) // IN
++ struct dir_context *ctx) // IN
+ {
+ int ret;
+- FilldirInfo info;
++
+ struct file *actualFile;
+
+ if (!file) {
+@@ -184,12 +143,10 @@ FileOpReaddir(struct file *file, // IN
+ return -EINVAL;
+ }
+
+- info.filldir = filldir;
+- info.dirent = dirent;
+-
+- actualFile->f_pos = file->f_pos;
+- ret = vfs_readdir(actualFile, Filldir, &info);
+- file->f_pos = actualFile->f_pos;
++ /* Ricky Wong Yung Fei:
++ * Manipulation of pos is now handled internally by iterate_dir().
++ */
++ ret = iterate_dir(actualFile, ctx);
+
+ return ret;
+ }
+@@ -237,7 +194,7 @@ FileOpRelease(struct inode *inode, // IN
+
+
+ struct file_operations RootFileOps = {
+- .readdir = FileOpReaddir,
++ .iterate = FileOpReaddir,
+ .open = FileOpOpen,
+ .release = FileOpRelease,
+ };
diff --git a/app-emulation/vmware-modules/vmware-modules-271.3.ebuild b/app-emulation/vmware-modules/vmware-modules-271.3.ebuild
index 6e1afeab4ff1..bac7d9b49ad2 100644
--- a/app-emulation/vmware-modules/vmware-modules-271.3.ebuild
+++ b/app-emulation/vmware-modules/vmware-modules-271.3.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2014 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.3.ebuild,v 1.1 2014/04/12 18:28:49 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-271.3.ebuild,v 1.2 2014/06/07 22:06:57 dilfridge Exp $
EAPI="4"
@@ -66,6 +66,7 @@ src_prepare() {
epatch "${FILESDIR}/${PV_MAJOR}-apic.patch"
kernel_is ge 3 7 0 && epatch "${FILESDIR}/${PV_MAJOR}-putname.patch"
kernel_is ge 3 10 0 && epatch "${FILESDIR}/${PV_MAJOR}-3.10.0.patch"
+ kernel_is ge 3 11 0 && epatch "${FILESDIR}/${PV_MAJOR}-filldir.patch"
# Allow user patches so they can support RC kernels and whatever else
epatch_user
diff --git a/app-emulation/vmware-modules/vmware-modules-279.1-r1.ebuild b/app-emulation/vmware-modules/vmware-modules-279.1-r1.ebuild
index b15e0e8a9899..0a72e15094cc 100644
--- a/app-emulation/vmware-modules/vmware-modules-279.1-r1.ebuild
+++ b/app-emulation/vmware-modules/vmware-modules-279.1-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-279.1-r1.ebuild,v 1.1 2014/04/12 20:13:46 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-279.1-r1.ebuild,v 1.2 2014/06/07 22:06:57 dilfridge Exp $
EAPI=5
@@ -80,6 +80,7 @@ src_prepare() {
epatch "${FILESDIR}/${PV_MAJOR}-apic.patch"
kernel_is ge 3 7 0 && epatch "${FILESDIR}/${PV_MAJOR}-putname.patch"
kernel_is ge 3 10 0 && epatch "${FILESDIR}/${PV_MAJOR}-vmblock.patch"
+ kernel_is ge 3 11 0 && epatch "${FILESDIR}/${PV_MAJOR}-filldir.patch"
# Allow user patches so they can support RC kernels and whatever else
epatch_user
diff --git a/app-emulation/vmware-modules/vmware-modules-279.2.ebuild b/app-emulation/vmware-modules/vmware-modules-279.2.ebuild
index 2b320d383385..f68ef51113ae 100644
--- a/app-emulation/vmware-modules/vmware-modules-279.2.ebuild
+++ b/app-emulation/vmware-modules/vmware-modules-279.2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-279.2.ebuild,v 1.1 2014/04/19 10:10:25 dilfridge Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-279.2.ebuild,v 1.2 2014/06/07 22:06:57 dilfridge Exp $
EAPI=5
@@ -80,6 +80,7 @@ src_prepare() {
epatch "${FILESDIR}/${PV_MAJOR}-apic.patch"
kernel_is ge 3 7 0 && epatch "${FILESDIR}/${PV_MAJOR}-putname.patch"
kernel_is ge 3 10 0 && epatch "${FILESDIR}/${PV_MAJOR}-vmblock.patch"
+ kernel_is ge 3 11 0 && epatch "${FILESDIR}/${PV_MAJOR}-filldir.patch"
# Allow user patches so they can support RC kernels and whatever else
epatch_user