[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/5] qcow2: Options to enable discard for freed
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH 3/5] qcow2: Options to enable discard for freed clusters |
Date: |
Fri, 14 Jun 2013 11:00:18 -0400 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6 |
Il 14/06/2013 10:31, Kevin Wolf ha scritto:
>> It looks like QCOW2_OPT_DISCARD_OTHER is a rare case, so I don't mind
>> leaving it as default to false. It won't waste more than a few clusters.
>
> Yes, it's generally relatively rare, like growing L1 or refcount table.
> There is one case where it should trigger a lot, though: Overwriting
> clusters of a compressed image.
>
> Hm, though actually it doesn't make a lot of sense there. The freed
> cluster will immediately be used by the next write. Maybe COW should
> actually be QCOW2_OPT_DISCARD_NEVER...
Sounds reasonable.
>> In the end discard_snapshot and discard_other should rarely be needed in
>> practice, so I don't think having discard=... is a mistake. Too many
>> knobs won't really be needed.
>>
>> In fact, perhaps we do not need discard_snapshot and discard_request,
>> only discard_other. discard_snapshot can be replaced by
>> file.discard=ignore, discard_request by discard=unmap.
>
> This is only true if you rule out some combination as useless. For
> example you would say that if you want to process guest requests, you
> always want to have snapshots discarded as well. You also assume that
> nobody wants the current behaviour (free clusters in qcow2 metadata, but
> don't send discards to raw-posix).
>
> Isn't this assuming a bit too much?
>
> To be clear, I don't expect these knobs to be used much either, but I
> have some feeling that some people (including us while debugging or
> asking questions) may be glad later to have such low-level options that
> control each layer separately.
Yeah, you're right. They're definitely useful to have, even if it is
"just in case".
Paolo
Re: [Qemu-devel] [PATCH 3/5] qcow2: Options to enable discard for freed clusters, Stefan Hajnoczi, 2013/06/17
[Qemu-devel] [PATCH 2/5] qcow2: Add refcount update reason to all callers, Kevin Wolf, 2013/06/13
[Qemu-devel] [PATCH 4/5] qcow2: Batch discards, Kevin Wolf, 2013/06/13
[Qemu-devel] [PATCH 5/5] block: Always enable discard on the protocol level, Kevin Wolf, 2013/06/13
Re: [Qemu-devel] [PATCH 0/5] qcow2: Discard freed clusters, Wenchao Xia, 2013/06/17