[arch-commits] Commit in virtualbox/trunk (008-linux-3.19.patch PKGBUILD)
Evangelos Foutras
foutrelis at archlinux.org
Mon Feb 9 15:13:26 UTC 2015
Date: Monday, February 9, 2015 @ 16:13:26
Author: foutrelis
Revision: 127400
upgpkg: virtualbox 4.3.20-5
Add upstream patch for Linux 3.17 support.
Added:
virtualbox/trunk/008-linux-3.19.patch
Modified:
virtualbox/trunk/PKGBUILD
----------------------+
008-linux-3.19.patch | 97 +++++++++++++++++++++++++++++++++++++++++++++++++
PKGBUILD | 10 +++--
2 files changed, 103 insertions(+), 4 deletions(-)
Added: 008-linux-3.19.patch
===================================================================
--- 008-linux-3.19.patch (rev 0)
+++ 008-linux-3.19.patch 2015-02-09 15:13:26 UTC (rev 127400)
@@ -0,0 +1,97 @@
+Index: src/VBox/Additions/linux/sharedfolders/regops.c
+===================================================================
+--- a/src/VBox/Additions/linux/sharedfolders/regops.c (revision 97544)
++++ b/src/VBox/Additions/linux/sharedfolders/regops.c (revision 97545)
+@@ -108,7 +108,7 @@
+ size_t tmp_size;
+ size_t left = size;
+ ssize_t total_bytes_read = 0;
+- struct inode *inode = file->f_dentry->d_inode;
++ struct inode *inode = GET_F_DENTRY(file)->d_inode;
+ struct sf_glob_info *sf_g = GET_GLOB_INFO(inode->i_sb);
+ struct sf_reg_info *sf_r = file->private_data;
+ loff_t pos = *off;
+@@ -183,7 +183,7 @@
+ size_t tmp_size;
+ size_t left = size;
+ ssize_t total_bytes_written = 0;
+- struct inode *inode = file->f_dentry->d_inode;
++ struct inode *inode = GET_F_DENTRY(file)->d_inode;
+ struct sf_inode_info *sf_i = GET_INODE_INFO(inode);
+ struct sf_glob_info *sf_g = GET_GLOB_INFO(inode->i_sb);
+ struct sf_reg_info *sf_r = file->private_data;
+@@ -454,7 +454,7 @@
+ #elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0)
+ static struct page *sf_reg_nopage(struct vm_area_struct *vma, unsigned long vaddr, int *type)
+ # define SET_TYPE(t) *type = (t)
+-#else /* LINUX_VERSION_CODE < KERNEL_VERSION (2, 6, 0) */
++#else /* LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) */
+ static struct page *sf_reg_nopage(struct vm_area_struct *vma, unsigned long vaddr, int unused)
+ # define SET_TYPE(t)
+ #endif
+@@ -465,7 +465,7 @@
+ uint32_t nread = PAGE_SIZE;
+ int err;
+ struct file *file = vma->vm_file;
+- struct inode *inode = file->f_dentry->d_inode;
++ struct inode *inode = GET_F_DENTRY(file)->d_inode;
+ struct sf_glob_info *sf_g = GET_GLOB_INFO(inode->i_sb);
+ struct sf_reg_info *sf_r = file->private_data;
+
+@@ -605,7 +605,7 @@
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 0)
+ static int sf_readpage(struct file *file, struct page *page)
+ {
+- struct inode *inode = file->f_dentry->d_inode;
++ struct inode *inode = GET_F_DENTRY(file)->d_inode;
+ struct sf_glob_info *sf_g = GET_GLOB_INFO(inode->i_sb);
+ struct sf_reg_info *sf_r = file->private_data;
+ uint32_t nread = PAGE_SIZE;
+Index: src/VBox/Additions/linux/sharedfolders/dirops.c
+===================================================================
+--- a/src/VBox/Additions/linux/sharedfolders/dirops.c (revision 97544)
++++ b/src/VBox/Additions/linux/sharedfolders/dirops.c (revision 97545)
+@@ -126,15 +126,13 @@
+
+ TRACE();
+
+- sf_g = GET_GLOB_INFO(dir->f_dentry->d_inode->i_sb);
++ inode = GET_F_DENTRY(dir)->d_inode;
++ sf_i = GET_INODE_INFO(inode);
++ sf_g = GET_GLOB_INFO(inode->i_sb);
+ sf_d = dir->private_data;
+
+ BUG_ON(!sf_g);
+ BUG_ON(!sf_d);
+-
+- inode = dir->f_dentry->d_inode;
+- sf_i = GET_INODE_INFO(inode);
+-
+ BUG_ON(!sf_i);
+
+ if (sf_i->force_reread)
+Index: src/VBox/Additions/linux/sharedfolders/vfsmod.h
+===================================================================
+--- a/src/VBox/Additions/linux/sharedfolders/vfsmod.h (revision 97544)
++++ b/src/VBox/Additions/linux/sharedfolders/vfsmod.h (revision 97545)
+@@ -145,7 +145,7 @@
+ # define SET_GLOB_INFO(sb, sf_g) (sb)->s_fs_info = sf_g
+ #endif
+
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION (2, 6, 19) || defined(KERNEL_FC6)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 19) || defined(KERNEL_FC6)
+ /* FC6 kernel 2.6.18, vanilla kernel 2.6.19+ */
+ # define GET_INODE_INFO(i) ((struct sf_inode_info *) (i)->i_private)
+ # define SET_INODE_INFO(i, sf_i) (i)->i_private = sf_i
+@@ -155,5 +155,11 @@
+ # define SET_INODE_INFO(i, sf_i) (i)->u.generic_ip = sf_i
+ #endif
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0)
++# define GET_F_DENTRY(f) (f->f_path.dentry)
++#else
++# define GET_F_DENTRY(f) (f->f_dentry)
+ #endif
+
++#endif
++
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2015-02-09 15:04:03 UTC (rev 127399)
+++ PKGBUILD 2015-02-09 15:13:26 UTC (rev 127400)
@@ -11,7 +11,7 @@
'virtualbox-guest-utils-nox'
'virtualbox-ext-vnc')
pkgver=4.3.20
-pkgrel=4
+pkgrel=5
arch=('i686' 'x86_64')
url='http://virtualbox.org'
license=('GPL' 'custom')
@@ -48,7 +48,7 @@
'xalan-c'
'xf86driproto'
'xorg-server-devel')
-[[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc')
+makedepends_x86_64=('gcc-multilib' 'lib32-glibc')
source=("http://download.virtualbox.org/virtualbox/$pkgver/VirtualBox-$pkgver.tar.bz2"
'virtualbox-guest-utils.sysusers'
'60-vboxdrv.rules'
@@ -64,7 +64,8 @@
'004-xorg.patch'
'005-gsoap-build.patch'
'006-rdesktop-vrdp-keymap-path.patch'
- '007-python2-path.patch')
+ '007-python2-path.patch'
+ '008-linux-3.19.patch')
md5sums=('cf3f25644aa0fae1029e8b362bd4375e'
'4833c8e0524fd2272b24ba0d94aef006'
'6e2722bfd7013c1b0174382626ac1b8d'
@@ -80,7 +81,8 @@
'a585770c6652f259c50958478b7ee735'
'ecfd13297d7753ebe7b8763ca5b792d9'
'7ea75b242e19440d622eb42a4d6c62c4'
- '188ea65918309f737ce28216c2b07c3b')
+ '188ea65918309f737ce28216c2b07c3b'
+ 'd8a6630dfc7fe9cd3282947ed0ccf55c')
prepare() {
cd "VirtualBox-$pkgver"
More information about the arch-commits
mailing list