J
> -- Pasi
>
>
>> 2010/5/22 Pasi KÀrkkÀinen <[1]
pasik@xxxxxx>
>>
>> On Fri, May 21, 2010 at 08:51:12PM +0400, eXeC001er wrote:
>> > Â Â Hi.
>> > Â Â I tried to create small patch forÃ* blktap2 : control function:
>> >
>>
>> This patch is horribly broken at least for me.. It looks really weird.
>> You might want to re-send it in a proper format..
>>
>> .. Or if it works for others just forget about this rant:)
>>
>> -- Pasi
>> > Â Â diff -r 840f269d95fb tools/python/xen/xend/XendDomainInfo.py
>> >   --- a/tools/python/xen/xend/XendDomainInfo.py  Wed May 19
>> 22:59:52 2010
>> > Â Â +0100
>> >   +++ b/tools/python/xen/xend/XendDomainInfo.py  Fri May 21
>> 20:17:15 2010
>> > Â Â +0400
>> > Â Â @@ -3292,6 +3292,7 @@
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â fn =
>> BOOTLOADER_LOOPBACK_DEVICE
>> > Â Â Ã*
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â try:
>> > Â Â + Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* time.sleep(5)
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â blcfg =
>> bootloader(blexec, fn, self, False,
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã*
>> Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* bootloader_args,
>> > Â Â kernel, ramdisk, args)
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â finally:
>> > Â Â @@ -3299,7 +3300,7 @@
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã*
>> Â [1][2]
log.info("Unmounting %s from %s." %
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã*
>> Â Ã* Â Ã* (fn,
>> > Â Â BOOTLOADER_LOOPBACK_DEVICE))
>> > Â Â Ã*
>> > Â Â - Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã*
>> dom0.destroyDevice('tap',
>> > Â Â BOOTLOADER_LOOPBACK_DEVICE)
>> > Â Â + Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã*
>> dom0.destroyDevice(devtype,
>> > Â Â BOOTLOADER_LOOPBACK_DEVICE)
>> > Â Â Ã*
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â if blcfg is None:
>> > Â Â Ã* Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â Ã* Â msg = "Had a
>> bootloader specified, but can't
>> > Â Â find disk"
>> > Â Â With this patch DomU boot from VHD disk without error.
>> > Â Â But i can not fix other bug:
>> > Â Â if after DomU (boot disk is blktap2-type) stopped i can not
>> startÃ* it
>> > Â Â again, because i get error "raise VmError("Device %s is already
>> > Â Â connected." % dev_str)" in "DevController.py".
>> > Â Â but i found workaround:
>> > Â Â stop blktap2_mount: echo 1 >Ã* /sys/class/blktap2/blktapX/remove
>> > Â Â remove records from xenstore:Ã*
>> > Â Â xenstore-rm /vm/00000000-0000-0000-0000-000000000000
>> > Â Â xenstore-write /local/domain/0/vm ""
>> > Â Â Now i can run my DomU again.
>> >
>> > References
>> >
>> > Â Â Visible links
>> > Â Â 1. [3]
http://log.info/
>>
>> > _______________________________________________
>> > Xen-devel mailing list
>> > [4]
Xen-devel@xxxxxxxxxxxxxxxxxxx
>> > [5]
http://lists.xensource.com/xen-devel
>>
>> References
>>
>> Visible links
>> 1. mailto:
pasik@xxxxxx
>> 2.
http://log.info/
>> 3.
http://log.info/
>> 4. mailto:
Xen-devel@xxxxxxxxxxxxxxxxxxx
>> 5.
http://lists.xensource.com/xen-devel
>>
>
>> diff -r d0420ab97345 tools/python/xen/util/blkif.py
>> --- a/tools/python/xen/util/blkif.py Fri May 21 16:21:39 2010 +0100
>> +++ b/tools/python/xen/util/blkif.py Sat May 22 01:21:15 2010 +0400
>> @@ -87,7 +87,7 @@
>> fn = "/dev/%s" %(fn,)
>>
>> if typ in ("tap", "tap2"):
>> - (taptype, fn) = fn.split(":", 1)
>> + (taptype, fn) = fn.split(":", 2)[1:]
>> return (fn, taptype)
>>
>> def blkdev_uname_to_file(uname):
>> diff -r d0420ab97345 tools/python/xen/xend/XendDomainInfo.py
>> --- a/tools/python/xen/xend/XendDomainInfo.py Fri May 21 16:21:39 2010 +0100
>> +++ b/tools/python/xen/xend/XendDomainInfo.py Sat May 22 01:21:15 2010 +0400
>> @@ -3292,6 +3292,7 @@
>> fn = BOOTLOADER_LOOPBACK_DEVICE
>>
>> try:
>> + time.sleep(5)
>> blcfg = bootloader(blexec, fn, self, False,
>> bootloader_args, kernel, ramdisk, args)
>> finally:
>> @@ -3299,7 +3300,7 @@
>>
log.info("Unmounting %s from %s." %
>> (fn, BOOTLOADER_LOOPBACK_DEVICE))
>>
>> - dom0.destroyDevice('tap', BOOTLOADER_LOOPBACK_DEVICE)
>> + dom0.destroyDevice(devtype, BOOTLOADER_LOOPBACK_DEVICE)
>>
>> if blcfg is None:
>> msg = "Had a bootloader specified, but can't find disk"
>>
>