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

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


  • To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Jim Fehlig <jfehlig@xxxxxxxxxx>
  • Date: Tue, 03 Feb 2009 15:34:58 -0700
  • Delivery-date: Tue, 03 Feb 2009 14:35:35 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

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

 


Rackspace

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