xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: eXeC001er <execooler@gmail.com>
To: Keir Fraser <keir.fraser@eu.citrix.com>
Cc: Boris Derzhavets <bderzhavets@yahoo.com>,
	Xen-devel <xen-devel@lists.xensource.com>
Subject: Re: [PATCH] Re: blktap2 problem with pvops kernel 2.6.32.13 and xen 4.0-rc1
Date: Sun, 30 May 2010 19:00:24 +0400	[thread overview]
Message-ID: <AANLkTimX4MsqkVAWvSuhpRK7gLwh04B8LjE8FhNwpxMY@mail.gmail.com> (raw)
In-Reply-To: <C8281794.164E4%keir.fraser@eu.citrix.com>


[-- Attachment #1.1: Type: text/plain, Size: 4060 bytes --]

this patch remove problems with blktap2 devices:
1. If we use blktap2 disk device then DomU does not boot. Returned error: File
'vhd:/path/.../disk.img' doesn't exist.
2. Created blktap2 disk device does not accessible immediately after
connecting: If we use pygrub then DomU does not boot. Returned error: Disk
is not accessible.

Signed-off-by: eXeC001er <execooler@gmail.com>
---

2010/5/30 Keir Fraser <keir.fraser@eu.citrix.com>

> Needs a patch description and a signed-off-by line.
>
>  -- Keir
>
> On 30/05/2010 13:21, "eXeC001er" <execooler@gmail.com> wrote:
>
> > My python-experience is small, but i tied to rewrite.
> > New in attach.
> >
> > 2010/5/30 Keir Fraser <keir.fraser@eu.citrix.com>
> >> On 30/05/2010 11:37, "Pasi Kärkkäinen" <pasik@iki.fi> wrote:
> >>
> >>> On Sun, May 30, 2010 at 02:02:06PM +0400, eXeC001er wrote:
> >>>>    I have already sent a patch 1 weak ago.
> (blktap2_control_func.patch)
> >>>>    repeat in attach.
> >>>>    Thanks.
> >>>
> >>> Ok, thanks.
> >>>
> >>> Keir: I guess this is not committed yet?
> >>
> >> I'm not too happy about the sleep(5). I guess if there's no better
> solution
> >> coming up I should just whack this patch in?
> >>
> >>  -- Keir
> >>
> >>> -- Pasi
> >>>
> >>>>    2010/5/30 Pasi Kärkkäinen <[1]pasik@iki.fi>
> >>>>
> >>>>      On Sun, May 30, 2010 at 11:17:51AM +0400, eXeC001er wrote:
> >>>>>      I've attempted to install Nexenta Core 3 image under Xen 4.0
> >>>>      (2.6.32.13
> >>>>>      pvops) on top of F13. Sample nexenta3.cfg profile contains 4
> >>>>      lines like
> >>>>>      this:-
> >>>>>
> >>>>>      disk=['tat:tapdisk:vhd:/path/../disk.img,xvda,w'] ( from sample)
> >>>>>
> >>>>>      It generates message
> >>>>>      Â File 'vhd:/path/.../disk.img' doesn't exist.
> >>>>>
> >>>>>      Boris.
> >>>>>      P.S. It was already in one of the threads @xen-users.
> >>>>>
> >>>>>    This bug in "def _parse_uname(uname):"
> >>>>      (tools/python/xen/util/blkif.py)
> >>>>>    (taptype, fn) = fn.split(":", 1) >>>>>>Â (taptype, fn) =
> >>>>      fn.split(":",
> >>>>>    2)[1:3]
> >>>>
> >>>>      Can you send a proper patch, as unified diff (diff -u), with a
> >>>>      Signed-off-by line?
> >>>>      -- Pasi
> >>>>
> >>>> References
> >>>>
> >>>>    Visible links
> >>>>    1. mailto:pasik@iki.fi
> >>>
> >>>> 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 <http://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"
> >>>
> >>
> >>
> >
> >
>
>
>

[-- Attachment #1.2: Type: text/html, Size: 7131 bytes --]

[-- Attachment #2: bltap2_control_func.patch --]
[-- Type: text/x-patch, Size: 2067 bytes --]

diff -r 93410e5e4ad8 tools/python/xen/util/blkif.py
--- a/tools/python/xen/util/blkif.py	Sat May 22 06:36:41 2010 +0100
+++ b/tools/python/xen/util/blkif.py	Sun May 30 16:17:54 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:3]
     return (fn, taptype)
 
 def blkdev_uname_to_file(uname):
diff -r 93410e5e4ad8 tools/python/xen/xend/XendBootloader.py
--- a/tools/python/xen/xend/XendBootloader.py	Sat May 22 06:36:41 2010 +0100
+++ b/tools/python/xen/xend/XendBootloader.py	Sun May 30 16:17:54 2010 +0400
@@ -13,6 +13,7 @@
 #
 
 import os, select, errno, stat, signal, tty
+import time
 import random
 import shlex
 from xen.xend import sxp
@@ -38,10 +39,16 @@
         msg = "Bootloader isn't executable"
         log.error(msg)
         raise VmError(msg)
-    if not os.access(disk, os.R_OK):
-        msg = "Disk isn't accessible"
-        log.error(msg)
-        raise VmError(msg)
+    attempt = 0
+    while True:
+        if not os.access(disk, os.R_OK) and attempt > 3:
+            msg = "Disk isn't accessible"
+            log.error(msg)
+            raise VmError(msg)
+        else:
+            break
+        time.sleep(1)
+        attempt = attempt + 1
 
     if os.uname()[0] == "NetBSD" and disk.startswith('/dev/'):
        disk = disk.replace("/dev/", "/dev/r")
diff -r 93410e5e4ad8 tools/python/xen/xend/XendDomainInfo.py
--- a/tools/python/xen/xend/XendDomainInfo.py	Sat May 22 06:36:41 2010 +0100
+++ b/tools/python/xen/xend/XendDomainInfo.py	Sun May 30 16:17:54 2010 +0400
@@ -3299,7 +3299,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"

[-- Attachment #3: Type: text/plain, Size: 138 bytes --]

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

  parent reply	other threads:[~2010-05-30 15:00 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-30  7:17 blktap2 problem with pvops kernel 2.6.32.13 and xen 4.0-rc1 eXeC001er
2010-05-30  9:09 ` Pasi Kärkkäinen
2010-05-30 10:02   ` eXeC001er
2010-05-30 10:37     ` [PATCH] " Pasi Kärkkäinen
2010-05-30 11:36       ` Keir Fraser
2010-05-30 12:21         ` eXeC001er
2010-05-30 12:24           ` Keir Fraser
2010-05-30 13:28             ` Sander Eikelenboom
2010-05-30 15:00             ` eXeC001er [this message]
2010-05-31  7:59               ` Boris Derzhavets
2010-05-31 10:27                 ` eXeC001er
2010-05-31 16:04                   ` Boris Derzhavets
2010-05-31 16:28                     ` eXeC001er
2010-05-31 20:06                       ` Boris Derzhavets
2010-06-01  8:30                         ` eXeC001er
2010-06-04  7:57                         ` eXeC001er
2010-06-06 20:21                           ` eXeC001er
2010-05-30 12:45           ` Łukasz Oleś
2010-06-01  7:54   ` XenWiki Xen 4.0 Tutorials for Ubuntu 10.04 Boris Derzhavets
2010-06-01 12:08     ` Pasi Kärkkäinen
2010-06-01 14:26       ` Boris Derzhavets
2010-06-01 17:22         ` Pasi Kärkkäinen
2010-06-02 15:14       ` Re: XenWiki Xen 4.0 Tutorials for Ubuntu 10.04 Libvirt 0.8.0 Boris Derzhavets
2010-06-02 18:35     ` XenWiki Xen 4.0 Tutorials for Ubuntu 10.04 & " Boris Derzhavets
2010-06-02 18:41       ` Pasi Kärkkäinen
2010-06-02 19:23         ` Boris Derzhavets
2010-06-02 19:28           ` Pasi Kärkkäinen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=AANLkTimX4MsqkVAWvSuhpRK7gLwh04B8LjE8FhNwpxMY@mail.gmail.com \
    --to=execooler@gmail.com \
    --cc=bderzhavets@yahoo.com \
    --cc=keir.fraser@eu.citrix.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).