sorry, i forgot to cc qemu-bl...@nongnu.org <mailto:qemu-bl...@nongnu.org>.

zhangzhiming
zhangzhimin...@meituan.com



> On May 7, 2016, at 10:47 AM, zhangzhiming <zhangzhimin...@meituan.com> wrote:
> 
> thank you for your reply, and i am glad to join to the development of qemu.
> i will try my best to finish this new function.
> 
> have a good day!
> 
> zhangzhiming
> zhangzhimin...@meituan.com
> 
> 
> 
>> On May 3, 2016, at 4:44 PM, Kevin Wolf <kw...@redhat.com> wrote:
>> 
>> [ Cc: qemu-block ]
>> 
>> Am 29.04.2016 um 10:59 hat zhangzm geschrieben:
>>> hi, i want to implement the function of qcow2 resize which has
>>> snapshots.
>>> 
>>> each snapshot of qcow2 will have a separate total size, and when apply
>>> a snapshot, the image can be shrunk, and the total size of image will
>>> change after apply to a snapshot with different size.
>>> 
>>> now, there is a disk_size value in struct QcowSnapshot, i only need to
>>> change the size of current active image layer when apply a snapshot
>>> with different size, and the io request will be limit in the range of
>>> active layer.
>> 
>> Yes, I think today the qcow2 format provides everything that is needed
>> to implement this. You need to make sure that we have a v3 image so that
>> the virtual disk size is actually stored in the snapshot (this field did
>> not exist in v2 images yet).
>> 
>> What you need to consider is that loading a snapshot becomes similar to
>> resizing an image then and you need to do the same things for it. For
>> example, we need to figure out what to do with associated dirty bitmaps
>> (adapt them to the new size like in bdrv_truncate()?), call resize
>> callbacks so that the guest devices actually see the changes size and
>> possibly also consider the BLOCK_OP_TYPE_RESIZE blockers to prevent a
>> size change while the image is in use.
>> 
>>> and i want my code merged into the master of qemu.
>> 
>> The wiki has a few tips on how to submit patches for qemu:
>> http://wiki.qemu.org/Contribute/SubmitAPatch
>> 
>> For a patch (or patch series) like this, you will want to CC at least
>> qemu-block and qemu-devel, plus possibly a few individual people.
>> 
>> Kevin
>> 
> 
> 

Reply via email to