Messages in this thread | | | Date | Mon, 29 Aug 2016 15:55:40 -0400 | From | Tejun Heo <> | Subject | Re: [PATCH] bdev: fix NULL pointer dereference in sync()/close() race |
| |
Hello,
On Sat, Aug 27, 2016 at 11:30:22AM +0200, Vegard Nossum wrote: > > Don't know what's the right fix, but I posted a slightly different one > > for the same crash some months ago: > > https://patchwork.kernel.org/patch/8556941/ > > > > Ah, I'm sorry, I didn't see that. > > Your patch is 100% identical to my first attempt at a fix and I can > confirm that it also fixes the problem for me. > > If people who are more savvy in block/fs code could ack the locking bits > I think we should apply the patch ASAP because it's an easy local DOS if > you have (open/read) access to any block device.
I think the right thing to do there is doing blkdev_get() / blkdev_put() around func() invocation in iterate_bdevs() rather than holding bd_mutex across the callback. Can you please verify whether that works?
Thanks.
-- tejun
| |