On Thu, Apr 05, 2012 at 05:42:57PM +0200, Paolo Bonzini wrote: > QED's opaque data includes a pointer back to the BlockDriverState. > Creating a snapshot whose format is QED breaks the relationship when > bdrv_append shuffles data between bs_new and bs_top. To avoid this, > add a "rebind" function that tells the driver about the new relationship > between the BlockDriverState and its opaque. > > The patch also adds rebind to VVFAT for completeness, even though it is > not used with live snapshots. > > Thanks to Stefan and Jeff for help reproducing and debugging this. > > Cc: Stefan Hajnoczi <stefa...@linux.vnet.ibm.com> > Cc: Jeff Cody <jc...@redhat.com> > Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> > --- > block.c | 10 ++++++++++ > block/qed.c | 7 +++++++ > block/vvfat.c | 7 +++++++ > block_int.h | 1 + > 4 files changed, 25 insertions(+)
Reviewed-by: Stefan Hajnoczi <stefa...@linux.vnet.ibm.com>