md: raid0/linear: fix dereference before null check on pointer mddev
authorColin Ian King <colin.king@canonical.com>
Thu, 2 Jul 2020 11:35:02 +0000 (12:35 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Aug 2020 06:23:32 +0000 (08:23 +0200)
commitbda37473d606dc8c43a77dcfcba4b87399e3bedc
treebccf4fb32fd64ce1f10b5b7b1c9d5892da1fc537
parentb31507ed228f1716fd8a9f5f0924037fb9dd9741
md: raid0/linear: fix dereference before null check on pointer mddev

[ Upstream commit 9a5a85972c073f720d81a7ebd08bfe278e6e16db ]

Pointer mddev is being dereferenced with a test_bit call before mddev
is being null checked, this may cause a null pointer dereference. Fix
this by moving the null pointer checks to sanity check mddev before
it is dereferenced.

Addresses-Coverity: ("Dereference before null check")
Fixes: 62f7b1989c02 ("md raid0/linear: Mark array as 'broken' and fail BIOs if a member is gone")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Reviewed-by: Guilherme G. Piccoli <gpiccoli@canonical.com>
Signed-off-by: Song Liu <songliubraving@fb.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/md/md.c