summaryrefslogtreecommitdiff
path: root/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3.19.patch
diff options
context:
space:
mode:
authorBlackNoxis <steven.darklight@gmail.com>2015-02-22 12:51:17 +0200
committerBlackNoxis <steven.darklight@gmail.com>2015-02-22 12:51:17 +0200
commit5aa176b4d0b3d96fa00499efd042d8a029575751 (patch)
tree32590fb38bcea8609776883da4b066543776fec6 /app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3.19.patch
parent1f256194c40ef12a65dfe14a41394775a957077e (diff)
Added virtualbox-guest-additions
Diffstat (limited to 'app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3.19.patch')
-rw-r--r--app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3.19.patch76
1 files changed, 76 insertions, 0 deletions
diff --git a/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3.19.patch b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3.19.patch
new file mode 100644
index 00000000..d0eea45d
--- /dev/null
+++ b/app-emulation/virtualbox-guest-additions/files/virtualbox-guest-additions-3.19.patch
@@ -0,0 +1,76 @@
+--- a/vboxsf/dirops.c
++++ b/vboxsf/dirops.c
+@@ -127,13 +127,11 @@
+ 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);
+
+--- a/vboxsf/regops.c
++++ b/vboxsf/regops.c
+@@ -109,5 +109,5 @@
+ 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;
+@@ -184,5 +184,5 @@
+ 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);
+@@ -455,5 +455,5 @@
+ 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)
+@@ -466,5 +466,5 @@
+ 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;
+@@ -606,5 +606,5 @@
+ 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;
+--- a/vboxsf/vfsmod.h
++++ b/vboxsf/vfsmod.h
+@@ -146,5 +146,5 @@
+ #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)
+@@ -156,4 +156,10 @@
+ #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
++