kernel: bring back unionfs-2.5.8 again, there's a NULL pointer deref in 2.5.9.

This commit is contained in:
Juan RP 2011-05-03 08:40:15 +02:00
parent c735933675
commit 13d1206fe6
6 changed files with 28 additions and 1 deletions

View File

@ -0,0 +1,2 @@
unionfs-2.5.8_for_2.6.38-rc7.diff.gz
unionfs-2.5.8-setattr-fixes.patch

View File

@ -0,0 +1,25 @@
Adapted for 2.6.38 from http://www.fsl.cs.sunysb.edu/pipermail/unionfs/2011-March/006088.html
--- fs/unionfs/inode.c.orig 2011-03-29 09:19:23.477166008 +0200
+++ fs/unionfs/inode.c 2011-03-29 09:22:02.267303281 +0200
@@ -936,7 +936,8 @@ static int unionfs_setattr(struct dentry
err = -EINVAL;
goto out;
}
- lower_inode = unionfs_lower_inode(inode);
+ lower_inode = lower_dentry->d_inode;
+ BUG_ON(!lower_inode);
/* check if user has permission to change lower inode */
err = inode_change_ok(lower_inode, ia);
@@ -970,7 +971,9 @@ static int unionfs_setattr(struct dentry
goto out;
/* get updated lower_dentry/inode after copyup */
lower_dentry = unionfs_lower_dentry(dentry);
- lower_inode = unionfs_lower_inode(inode);
+ BUG_ON(!lower_inode);
+ lower_inode = lower_dentry->d_inode;
+ BUG_ON(!lower_inode);
}
/*

View File

@ -11,7 +11,7 @@ triggers="initramfs-tools"
nostrip=yes
noverifyrdeps=yes
preserve=yes
#revision=1
revision=1
_kernel_headers_revision=${revision}
if [ -n "${revision}" ]; then
_kernver="${version}_${revision}"