[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/3] block: Don't wait serialising for non-COR r
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH 1/3] block: Don't wait serialising for non-COR read requests |
Date: |
Tue, 1 Dec 2015 12:00:28 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 01.12.2015 um 11:26 hat Fam Zheng geschrieben:
> On Tue, 12/01 10:54, Kevin Wolf wrote:
> > Am 01.12.2015 um 10:36 hat Fam Zheng geschrieben:
> > > The assertion problem was noticed in 06c3916b35a, but it wasn't
> > > completely fixed, because even though the req is not marked as
> > > serialising, it still gets serialised by wait_serialising_requests
> > > against other serialising requests, which could lead to the same
> > > assertion failure.
> > >
> > > Fix it by even more explicitly skipping the serialising for this
> > > specific case.
> > >
> > > Signed-off-by: Fam Zheng <address@hidden>
> >
> > And this, my friends, is another example why read/write notifiers are
> > wrong and should die sooner rather than later. </broken-record>
> >
>
> Yes, I agree, except it's not clear to me what a better alternative solution
> should be. A immediate question is, with whatever approach we will have,
> wouldn't we still need to do this sort of "reentrant" COW before the data is
> overwritten?
If the backup job could temporarily insert a filter driver, you wouldn't
get reentrance, but another BDS in the stack.
Now that much of the blockdev-add stuff seems to be falling into place
at last, dynamic reconfiguration and filters might be the next big nut
for us to crack.
Kevin