[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