On Wed, Sep 28, 2011 at 12:57 AM, Fam Zheng <famc...@gmail.com> wrote: > This could be a bug. I've briefly checked. It's not limited to > ISO->streamOptimized, but also reproduced trying to convert from VDI. > It fails because consequential writes fall into the same cluster of > target VMDK. The leading write allocates the cluster, and the > following write fails the check of "no write to allocated cluster" > because it's already allocated on the previous write. > > I'm wondering how we could avoid qemu-img initiating such writes, i.e. > to ensure it's going in the granularity of VMDK's cluster when > converting.
Your explanation makes sense. Have you looked at img_convert() in the compress=1 case? There it works in cluster sizes. Perhaps you can think of a way to take advantage of that or unify the code with regular convert code path. Stefan