From: Al Viro Date: Tue, 3 Apr 2018 04:13:17 +0000 (-0400) Subject: orangefs_kill_sb(): deal with allocation failures X-Git-Tag: v4.14.36~11 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=0bb4a6f2ff1a9081a35b07760fa40f9880d16bc6;p=users%2Fjedix%2Flinux-maple.git orangefs_kill_sb(): deal with allocation failures commit 659038428cb43a66e3eff71e2c845c9de3611a98 upstream. orangefs_fill_sb() might've failed to allocate ORANGEFS_SB(s); don't oops in that case. Cc: stable@kernel.org Signed-off-by: Al Viro Signed-off-by: Greg Kroah-Hartman --- diff --git a/fs/orangefs/super.c b/fs/orangefs/super.c index 47ebd9bfd1a1b..1997ce49ab46c 100644 --- a/fs/orangefs/super.c +++ b/fs/orangefs/super.c @@ -594,6 +594,11 @@ void orangefs_kill_sb(struct super_block *sb) /* provided sb cleanup */ kill_anon_super(sb); + if (!ORANGEFS_SB(sb)) { + mutex_lock(&orangefs_request_mutex); + mutex_unlock(&orangefs_request_mutex); + return; + } /* * issue the unmount to userspace to tell it to remove the * dynamic mount info it has for this superblock