Re: [PATCH] fs/block_dev: fix potential NULL ptr deref in freeze_bdev()

From: Christoph Hellwig
Date: Thu Aug 25 2016 - 03:39:32 EST


On Tue, Aug 23, 2016 at 06:55:31PM +0300, Andrey Ryabinin wrote:
> Calling freeze_bdev() twice on the same block device without mounted
> filesystem get_super() will return NULL, which will lead to NULL-ptr
> dereference later in drop_super().
>
> Check get_super() result to fix that.
>
> Note, that this is a purely theoretical issue. We have only 3
> freeze_bdev() callers. 2 of them are in filesystem code and used on a
> device with mounted fs. The third one in lock_fs() has protection in
> upper-layer code against freezing block device the second time without
> thawing it first.
>
> Signed-off-by: Andrey Ryabinin <aryabinin@xxxxxxxxxxxxx>

Looks fine,

Reviewed-by: Christoph Hellwig <hch@xxxxxx>