From e432a024b0b9b2cd29f077b47c71aacea52034bb Mon Sep 17 00:00:00 2001 From: Jeff Mahoney Date: Sun, 17 May 2009 01:02:02 -0400 Subject: [PATCH] --- yaml --- r: 145082 b: refs/heads/master c: ceb5edc457f07956c82dccfb54ca8ae7e2a399f0 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/reiserfs/super.c | 2 -- trunk/fs/reiserfs/xattr.c | 4 +++- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 90389f6c4608..65d9539f6290 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 12abb35a03e32c97235fcefdcf2d851be9f82dc2 +refs/heads/master: ceb5edc457f07956c82dccfb54ca8ae7e2a399f0 diff --git a/trunk/fs/reiserfs/super.c b/trunk/fs/reiserfs/super.c index 1215a4f50cd2..3567fb9e3fb1 100644 --- a/trunk/fs/reiserfs/super.c +++ b/trunk/fs/reiserfs/super.c @@ -448,13 +448,11 @@ int remove_save_link(struct inode *inode, int truncate) static void reiserfs_kill_sb(struct super_block *s) { if (REISERFS_SB(s)) { -#ifdef CONFIG_REISERFS_FS_XATTR if (REISERFS_SB(s)->xattr_root) { d_invalidate(REISERFS_SB(s)->xattr_root); dput(REISERFS_SB(s)->xattr_root); REISERFS_SB(s)->xattr_root = NULL; } -#endif if (REISERFS_SB(s)->priv_root) { d_invalidate(REISERFS_SB(s)->priv_root); dput(REISERFS_SB(s)->priv_root); diff --git a/trunk/fs/reiserfs/xattr.c b/trunk/fs/reiserfs/xattr.c index cf949646dd57..628075ca82c1 100644 --- a/trunk/fs/reiserfs/xattr.c +++ b/trunk/fs/reiserfs/xattr.c @@ -123,7 +123,9 @@ static struct dentry *open_xa_root(struct super_block *sb, int flags) mutex_lock_nested(&privroot->d_inode->i_mutex, I_MUTEX_XATTR); xaroot = dget(REISERFS_SB(sb)->xattr_root); - if (!xaroot->d_inode) { + if (!xaroot) + xaroot = ERR_PTR(-ENODATA); + else if (!xaroot->d_inode) { int err = -ENODATA; if (xattr_may_create(flags)) err = xattr_mkdir(privroot->d_inode, xaroot, 0700);