[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH] blockdev-backup: enable non-root nodes for back
From: |
John Snow |
Subject: |
Re: [Qemu-block] [PATCH] blockdev-backup: enable non-root nodes for backup |
Date: |
Mon, 4 Dec 2017 19:48:27 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 |
On 12/04/2017 05:21 PM, Max Reitz wrote:
> On 2017-12-04 23:15, John Snow wrote:
>>
>>
>> On 12/01/2017 02:41 PM, Max Reitz wrote:
>>> ((By the way, I don't suppose that's how it should work... But I don't
>>> suppose that we want propagation of dirtying towards the BDS roots, do
>>> we? :-/))
>>
>> I have never really satisfactorily explained to myself what bitmaps on
>> intermediate notes truly represent or mean.
>>
>> The simple case is "This layer itself serviced a write request."
>>
>> If that information is not necessarily meaningful, I'm not sure that's a
>> problem except in configuration.
>>
>>
>> ...Now, if you wanted to talk about bitmaps that associate with a
>> Backend instead of a Node...
>
> But it's not about bitmaps on intermediate nodes, quite the opposite.
> It's about bitmaps on roots but write requests happening on intermediate
> nodes.
>
Oh, I see what you're saying. It magically doesn't really change my
opinion, by coincidence!
> Say you have a node I and two filter nodes A and B using it (and they
> are OK with shared writers). There is a dirty bitmap on A.
>
> Now when a write request goes through B, I will obviously have changed,
> and because A and B are filters, so will A. But the dirty bitmap on A
> will still be clean.
>
> My example was that when you run a mirror over A, you won't see dirtying
> from B. So you can't e.g. add a throttle driver between a mirror job
> and the node you want to mirror, because the dirty bitmap on the
> throttle driver will not be affected by accesses to the actual node.
>
> Max
>
Well, in this case I would say that a root BDS is not really any
different from an intermediate one and can't really know what's going on
in the world outside.
At least, I think that's how we model it right now -- we pretend that we
can record the activity of an entire drive graph by putting the bitmap
on the root-most node we can get a hold of and assuming that all writes
are going to go through us.
Clearly this is increasingly false the more we modularise the block graph.
*uhm*
I would say that a bitmap attached to a BlockBackend should behave in
the way you say: writes to any children should change the bitmap here.
bitmaps attached to nodes shouldn't worry about such things.
- Re: [Qemu-block] [PATCH] blockdev-backup: enable non-root nodes for backup, Max Reitz, 2017/12/01
- Re: [Qemu-block] [PATCH] blockdev-backup: enable non-root nodes for backup, John Snow, 2017/12/04
- Re: [Qemu-block] [PATCH] blockdev-backup: enable non-root nodes for backup, Max Reitz, 2017/12/04
- Re: [Qemu-block] [PATCH] blockdev-backup: enable non-root nodes for backup,
John Snow <=
- Re: [Qemu-block] [PATCH] blockdev-backup: enable non-root nodes for backup, Max Reitz, 2017/12/08
- Re: [Qemu-block] [Qemu-devel] [PATCH] blockdev-backup: enable non-root nodes for backup, John Snow, 2017/12/08
- Re: [Qemu-block] [Qemu-devel] [PATCH] blockdev-backup: enable non-root nodes for backup, Max Reitz, 2017/12/11
- Re: [Qemu-block] [Qemu-devel] [PATCH] blockdev-backup: enable non-root nodes for backup, John Snow, 2017/12/11
- Re: [Qemu-block] [Qemu-devel] [PATCH] blockdev-backup: enable non-root nodes for backup, Max Reitz, 2017/12/11
- Re: [Qemu-block] [Qemu-devel] [PATCH] blockdev-backup: enable non-root nodes for backup, John Snow, 2017/12/11