[et-mgmt-tools] virt-clone bug

Richard W.M. Jones rjones at redhat.com
Fri Nov 23 14:36:03 UTC 2007


Richard W.M. Jones wrote:
> The Debian maintainer of virt-install found this problem which seems to 
> be a bug in virt-clone:
> 
> # virt-clone -o demo -n demo2 --connect=qemu:///session -f bla2.img
> libvir: QEMU error :
> libvir: QEMU error :
> Cloning from /home/foo/kvm/test/bla.img to bla2.img
> ERROR:  local variable 'b' referenced before assignment

Judging from the error message, I'm guessing that it happens at the line 
I've marked below (in virtinst/CloneManager.py):

while 1:
      l = os.read(src_fd, design.clone_bs)
      s = len(l)
      if s == 0:
           meter.end(size)
           break
      # check sequence of zeros
      if sparse_copy_mode == True and zeros == l:
           os.lseek(dst_fd, s, 1)
      else:
           b = os.write(dst_fd, l)
      if s != b:			<--------
           meter.end(i)
           break
      i += s
      if i < size:
           meter.update(i)

It's a very strange piece of code.  AIUI it seems to be saying that if 
we get a short write, then we should just end the copy without any sort 
of error indication, which can't be the right thing to do.

Rich.

-- 
Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/
Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
Street, Windsor, Berkshire, SL4 1TE, United Kingdom.  Registered in
England and Wales under Company Registration No. 03798903
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3237 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://listman.redhat.com/archives/et-mgmt-tools/attachments/20071123/cb07d24a/attachment.bin>


More information about the et-mgmt-tools mailing list