Re: [PATCH RFC] virtio_blk: fix config handler race

From: Rusty Russell
Date: Tue Dec 20 2011 - 19:39:52 EST


On Wed, 7 Dec 2011 17:39:02 +0200, "Michael S. Tsirkin" <mst@xxxxxxxxxx> wrote:
> Fix a theoretical race related to config work
> handler: a config interrupt might happen
> after we flush config work but before we
> reset the device. It will then cause the
> config work to run during or after reset.

Thanks for the reminder. Apologies that this slipped through :(

> As a solution
> 1. flush after reset when we know there will be no more interrupts
> 2. add a flag to disable config access before reset

It's crude, but it works. Applied.

If this happens again, do we want a "__virtio_device_disable" which
stops any interrupts from being delivered? That would make this neater,
though the implementation might be a bit nasty.

Thanks,
Rusty.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/