block: fix use-after-free in disk_part_iter_next
authorMing Lei <ming.lei@redhat.com>
Mon, 21 Dec 2020 04:33:35 +0000 (12:33 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 17 Jan 2021 13:17:05 +0000 (14:17 +0100)
commit481097d6617414167c0018f1ece1bfb8e117f62f
treeec9c1bb4505ee3f45c40568e47b02961e79991aa
parent61e8c02ae6d671e98ab2d82fa26815c480740961
block: fix use-after-free in disk_part_iter_next

commit aebf5db917055b38f4945ed6d621d9f07a44ff30 upstream.

Make sure that bdgrab() is done on the 'block_device' instance before
referring to it for avoiding use-after-free.

Cc: <stable@vger.kernel.org>
Reported-by: syzbot+825f0f9657d4e528046e@syzkaller.appspotmail.com
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
block/genhd.c