WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH] Improve xm error if booted native

To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH] Improve xm error if booted native
From: Jim Fehlig <jfehlig@xxxxxxxxxx>
Date: Tue, 03 Feb 2009 15:34:58 -0700
Delivery-date: Tue, 03 Feb 2009 14:35:35 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Thunderbird 1.5.0.8 (X11/20060911)
Another trivial "user experience" patch that's been requested one too
many times ...

-----------------------------------------

How to reproduce:
i) boot default kernel (i.e. not xen kernel)
ii) run xm list

Actual Result:
calculon:/tmp # uname -a
Linux calculon.suse.cz 2.6.27.11-1-default #1 SMP 2009-01-14 23:28:13 +0100
x86_64 x86_64 x86_64 GNU/Linux
calculon:/tmp # xm list
ERROR Internal error: Could not obtain handle on privileged command interface
(2 = No such file or directory)
Traceback (most recent call last):
  File "/usr/sbin/xm", line 8, in <module>
    from xen.xm import main
  File "/usr/lib64/python2.6/site-packages/xen/xm/main.py", line 61, in
<module>
    xc = xen.lowlevel.xc.xc()
xen.lowlevel.xc.Error: (1, 'Internal error', 'Could not obtain handle on
privileged command interface (2 = No such file or directory)')
calculon:/tmp #   

Expected result:
A more descriptive error message and no python traceback.

-----------------------------------------

Looking at the various xc_interface_open() impls in
tools/libxc/xc_{linux,minios,netbsd,solaris}.c, it seems the most likely
reason to fail is not booted xen.  I added a comment in the error
suggesting this to user, e.g.

xen67:~ # xm li
ERROR Internal error: Could not obtain handle on privileged command
interface (2 = No such file or directory)
Is xen kernel running?

The suggestion can go if you like but IMO we should suppress the
traceback :-).

     Signed-off-by: Jim Fehlig <jfehlig@xxxxxxxxxx>

Index: xen-3.3.1-testing/tools/python/xen/xm/main.py
===================================================================
--- xen-3.3.1-testing.orig/tools/python/xen/xm/main.py
+++ xen-3.3.1-testing/tools/python/xen/xm/main.py
@@ -58,7 +58,11 @@ from xen.util.acmpolicy import ACM_LABEL
 import XenAPI
 
 import xen.lowlevel.xc
-xc = xen.lowlevel.xc.xc()
+try:
+    xc = xen.lowlevel.xc.xc()
+except Exception, ex:
+    print >>sys.stderr, ("Is xen kernel running?")
+    sys.exit(1)
 
 import inspect
 from xen.xend import XendOptions
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>