[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 = [ "tap:vhd:/var/norm/pools/agentTest/d894b704-b890-488d-b66e-1422b2b9a7a5.vhd,xvda,w", "tap:vhd:/var/norm/pools/agentTest/70bd3927-0e27-4830-9bf0-5b66ba290547.vhd,xvdb,w" ] 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. Thanks, Darren _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |