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

Re: [Xen-devel] [PATCH]: blktap2 : control function



On 05/21/2010 02:28 PM, Pasi KÃrkkÃinen wrote:
> On Sat, May 22, 2010 at 01:23:46AM +0400, eXeC001er wrote:
>   
>>    resend.
>>    with additional
>>
>>     
> Now it's OK.
> Hopefully someone familiar with the code can review it..
>   

The sleep(5) is almost certainly not the correct fix.

    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"
>>     
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
>
>   


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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