linux/fs/orangefs
Martin Brandenburg 1ec1688c53 orangefs: free superblock when mount fails
Otherwise lockdep says:

[ 1337.483798] ================================================
[ 1337.483999] [ BUG: lock held when returning to user space! ]
[ 1337.484252] 4.11.0-rc6 #19 Not tainted
[ 1337.484423] ------------------------------------------------
[ 1337.484626] mount/14766 is leaving the kernel with locks still held!
[ 1337.484841] 1 lock held by mount/14766:
[ 1337.485017]  #0:  (&type->s_umount_key#33/1){+.+.+.}, at: [<ffffffff8124171f>] sget_userns+0x2af/0x520

Caught by xfstests generic/413 which tried to mount with the unsupported
mount option dax.  Then xfstests generic/422 ran sync which deadlocks.

Signed-off-by: Martin Brandenburg <martin@omnibond.com>
Acked-by: Mike Marshall <hubcap@omnibond.com>
Cc: stable@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-04-15 09:39:31 -07:00
..
Kconfig Orangefs: kernel client part 7 2015-10-03 11:40:00 -04:00
Makefile Orangefs: change pvfs2 filenames to orangefs 2015-12-04 12:56:14 -05:00
acl.c posix_acl: Clear SGID bit when setting file permissions 2016-09-22 10:55:32 +02:00
dcache.c orangefs: don't use d_time 2016-10-24 14:50:07 -04:00
devorangefs-req.c orangefs: free superblock when mount fails 2017-04-15 09:39:31 -07:00
dir.c orangefs: use %pd/%pD 2016-08-07 23:38:47 -04:00
downcall.h orangefs: add features op 2016-08-12 15:12:54 -04:00
file.c don't open-code file_inode() 2016-12-04 18:29:28 -05:00
inode.c statx: Add a system call to make enhanced file info available 2017-03-02 20:51:15 -05:00
namei.c orangefs: don't use d_time 2016-10-24 14:50:07 -04:00
orangefs-bufmap.c orangefs: silence harmless integer overflow warning 2017-02-03 14:37:15 -05:00
orangefs-bufmap.h orangefs-bufmap.h: trim unused junk 2016-03-25 22:30:54 -04:00
orangefs-cache.c orangefs: add features op 2016-08-12 15:12:54 -04:00
orangefs-debug.h Orangef: remove overlooked old-style userspace debug parts 2015-12-11 11:00:12 -05:00
orangefs-debugfs.c Linux 4.10 2017-02-25 11:12:48 -05:00
orangefs-debugfs.h orangefs: clean up debugfs globals 2016-08-15 11:38:36 -04:00
orangefs-dev-proto.h orangefs: fix buffer size mis-match between kernel space and user space. 2017-02-09 14:41:06 -05:00
orangefs-kernel.h orangefs: free superblock when mount fails 2017-04-15 09:39:31 -07:00
orangefs-mod.c orangefs: Remove orangefs_backing_dev_info 2017-02-03 14:38:35 -05:00
orangefs-sysfs.c orangefs: Support readahead_readcnt parameter. 2017-02-03 14:38:28 -05:00
orangefs-sysfs.h Orangefs: change pvfs2 filenames to orangefs 2015-12-04 12:56:14 -05:00
orangefs-utils.c fs: add i_blocksize() 2017-02-27 18:43:46 -08:00
protocol.h orangefs: clean up debugfs globals 2016-08-15 11:38:36 -04:00
super.c orangefs: free superblock when mount fails 2017-04-15 09:39:31 -07:00
symlink.c vfs: remove ".readlink = generic_readlink" assignments 2016-12-09 16:45:04 +01:00
upcall.h orangefs: Support readahead_readcnt parameter. 2017-02-03 14:38:28 -05:00
waitqueue.c orangefs: rename most remaining global variables 2016-08-16 11:41:24 -04:00
xattr.c xattr: Stop calling {get,set,remove}xattr inode operations 2016-10-07 20:10:44 -04:00