Hi.
I tried to create small patch for blktap2 : control function:
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 @@
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.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
On Friday 21 May 2010 18:51:12 eXeC001er wrote:> Hi. > > I tried to create small patch for blktap2 : control function: > > 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 @@ > 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" >I have same error and I resolved it in similar way. It only happens when I''m using pygrub.> 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. >I found it too, it''s bug in script xen-hotplug-cleanup but I also doesn''t know right way to solve it. regards, Łukasz Oleś _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
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]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. http://log.info/> _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
resend. with additional 2010/5/22 Pasi Kärkkäinen <pasik@iki.fi>> 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]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. http://log.info/ > > > _______________________________________________ > > Xen-devel mailing list > > Xen-devel@lists.xensource.com > > http://lists.xensource.com/xen-devel > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
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.. -- Pasi> 2010/5/22 Pasi KÀrkkÀinen <[1]pasik@iki.fi> > > 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@lists.xensource.com > > [5]http://lists.xensource.com/xen-devel > > References > > Visible links > 1. mailto:pasik@iki.fi > 2. http://log.info/ > 3. http://log.info/ > 4. mailto:Xen-devel@lists.xensource.com > 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@lists.xensource.com http://lists.xensource.com/xen-devel
Jeremy Fitzhardinge
2010-May-22 01:01 UTC
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@iki.fi> >> >> 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@lists.xensource.com >> > [5]http://lists.xensource.com/xen-devel >> >> References >> >> Visible links >> 1. mailto:pasik@iki.fi >> 2. http://log.info/ >> 3. http://log.info/ >> 4. mailto:Xen-devel@lists.xensource.com >> 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@lists.xensource.com > http://lists.xensource.com/xen-devel > >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
without this ''sleep'' bootloader return error: ''Disk
isn''t accessible'' from
this block:
XendBootloader.py : def bootloader (....)
if not os.access(disk, os.R_OK):
msg = "Disk isn''t accessible"
log.error(msg)
raise VmError(msg)
2010/5/22 Jeremy Fitzhardinge <jeremy@goop.org>
> 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@iki.fi>
> >>
> >> 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@lists.xensource.com
> >> > [5]http://lists.xensource.com/xen-devel
> >>
> >> References
> >>
> >> Visible links
> >> 1. mailto:pasik@iki.fi
> >> 2. http://log.info/
> >> 3. http://log.info/
> >> 4. mailto:Xen-devel@lists.xensource.com
> >> 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@lists.xensource.com
> > http://lists.xensource.com/xen-devel
> >
> >
>
>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel