reiserfs: fix oops while creating privroot with selinux enabled
commitbd91f592633c1a3ec88ac2dd55b81cde45955b1d
authorJeff Mahoney <jeffm@suse.com>
Tue, 23 Mar 2010 20:35:38 +0000 (23 13:35 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 13 Aug 2010 20:20:20 +0000 (13 13:20 -0700)
tree4641a70129e3f312f4491d36fcd61d591530a6ab
parentee0f79ddf59966d514dae5b6c9fcfca0aec46492
reiserfs: fix oops while creating privroot with selinux enabled

commit 6cb4aff0a77cc0e6bae9475d62205319e3ebbf3f upstream.

Commit 57fe60df ("reiserfs: add atomic addition of selinux attributes
during inode creation") contains a bug that will cause it to oops when
mounting a file system that didn't previously contain extended attributes
on a system using security.* xattrs.

The issue is that while creating the privroot during mount
reiserfs_security_init calls reiserfs_xattr_jcreate_nblocks which
dereferences the xattr root.  The xattr root doesn't exist, so we get an
oops.

Addresses http://bugzilla.kernel.org/show_bug.cgi?id=15309

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/reiserfs/xattr_security.c
include/linux/reiserfs_xattr.h