[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] libxl device_disk_add orphans blktap devices on transaction error

I'm using the CentOS 6 bundle of xen from
http://dev.centos.org/centos/6/xen-c6/ and ran into an issue when
creating domains with multiple VHD tap disks.  Comparing unstable to
the 4.2.1 code I'm using, it seems this issue still applies.  I'm
using a configuration line that looks something like

disk = [ 

What I noticed happening in the code is that in device_disk_add the
call to libxl__xs_transaction_commit returns rc=1 so the "for (;;)"
loop just tries again.  The problem though is that the blktap device
was already created and assigned to a tapdisk process.  So it will
just leave that process hanging out there and allocated a new device
on the second pass through the for loop.  The second run through
succeeds.  What I typically see is that if I have more than 1 disk on
the domain, the first disk gets created fine and then each subsequent
disk gets two tapdisk processes.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.