On 8/13/19 9:31 AM, Max Reitz wrote: > On 13.08.19 13:51, Kevin Wolf wrote: > > [...] > >> Hm... This is a mess. :-) > > Just out of curiosity: Why? > > Aren’t there only two things we really need from the block_status > infrastructure? > > (1) Whether something is allocated in the given layer of the backing chain, (1)(a) - is it allocated in this layer (1)(b) - is it allocated in any backing layer > > (2) Whether we know that a given range reads as zeroes. > > Do we really need anything else? qemu-img map needs: (3) What host-relative offset, if any, corresponds to a given guest-visible offset. I also need to find time to revisit my proposed patches on block_status alignment - there are some cases where we want to ensure that one layer with large granularity does not pick up mid-granularity changes in status read from a backing layer with smaller granularity. -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3226 Virtualization: qemu.org | libvirt.org