Prev: [04/67] powerpc: fix build with make 3.82
Next: [081/111] Btrfs: kfree correct pointer during mount option parsing
From: Greg KH on 11 Aug 2010 20:40 2.6.32-stable review patch. If anyone has any objections, please let us know. ------------------ From: TARUISI Hiroaki <taruishi.hiroak(a)jp.fujitsu.com> commit 4a8be425a8fb8fbb5d881eb55fa6634c3463b9c9 upstream. I rebased Christian Parpart's patch to deny hard link across subvolumes. Original patch modifies also btrfs_rename, but I excluded it because we can move across subvolumes now and it make no problem. ----------------- Hard link across subvolumes should not allowed in Btrfs. btrfs_link checks root of 'to' directory is same as root of 'from' file. If not same, btrfs_link returns -EPERM. Signed-off-by: TARUISI Hiroaki <taruishi.hiroak(a)jp.fujitsu.com> Signed-off-by: Chris Mason <chris.mason(a)oracle.com> Acked-by: Jeff Mahoney <jeffm(a)suse.com> Signed-off-by: Greg Kroah-Hartman <gregkh(a)suse.de> --- fs/btrfs/inode.c | 4 ++++ 1 file changed, 4 insertions(+) --- a/fs/btrfs/inode.c +++ b/fs/btrfs/inode.c @@ -4462,6 +4462,10 @@ static int btrfs_link(struct dentry *old if (inode->i_nlink == 0) return -ENOENT; + /* do not allow sys_link's with other subvols of the same device */ + if (root->objectid != BTRFS_I(inode)->root->objectid) + return -EPERM; + /* * 1 item for inode ref * 2 items for dir items -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |