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-changelog

[Xen-changelog] [xen-unstable] xend: pass-through: Add pci_dict_bin_to_s

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] xend: pass-through: Add pci_dict_bin_to_str()
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 29 Jun 2009 02:20:18 -0700
Delivery-date: Mon, 29 Jun 2009 02:20:41 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1246092894 -3600
# Node ID d14fac3900a79288b41e559de361b496bc0e3e04
# Parent  e58e4d2e5cedf84a268720cf2cc00cd51d0874e6
xend: pass-through: Add pci_dict_bin_to_str()

Break out the device list gathering code from xm_pci_list()
so that it can be re-used by subsequent changes.

Cc: Dexuan Cui <dexuan.cui@xxxxxxxxx>
Cc: Masaki Kanno <kanno.masaki@xxxxxxxxxxxxxx>
Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
---
 tools/python/xen/xm/main.py |   47 +++++++++++++++++++++++++++++---------------
 1 files changed, 31 insertions(+), 16 deletions(-)

diff -r e58e4d2e5ced -r d14fac3900a7 tools/python/xen/xm/main.py
--- a/tools/python/xen/xm/main.py       Sat Jun 27 09:54:29 2009 +0100
+++ b/tools/python/xen/xm/main.py       Sat Jun 27 09:54:54 2009 +0100
@@ -2175,37 +2175,52 @@ def xm_vtpm_list(args):
                    "%(be-path)-30s  "
                    % ni)
 
-
-def xm_pci_list(args):
-    (use_long, params) = arg_check_for_resource_list(args, "pci-list")
-
-    dom = params[0]
-
+def attached_pci_dict_bin(dom):
     devs = []
     if serverType == SERVER_XEN_API:
         for dpci_ref in server.xenapi.VM.get_DPCIs(get_single_vm(dom)):
             ppci_ref = server.xenapi.DPCI.get_PPCI(dpci_ref)
             ppci_record = server.xenapi.PPCI.get_record(ppci_ref)
             dev = {
-                "domain":   int(ppci_record["domain"]),
-                "bus":      int(ppci_record["bus"]),
-                "slot":     int(ppci_record["slot"]),
-                "func":     int(ppci_record["func"]),
-                "vslot":    int(server.xenapi.DPCI.get_hotplug_slot(dpci_ref))
+                'domain': int(ppci_record['domain']),
+                'bus':    int(ppci_record['bus']),
+                'slot':   int(ppci_record['slot']),
+                'func':   int(ppci_record['func']),
+                'vslot':  int(server.xenapi.DPCI.get_hotplug_slot(dpci_ref))
             }
             devs.append(dev)
 
     else:
         for x in server.xend.domain.getDeviceSxprs(dom, 'pci'):
             dev = {
-                "domain":   int(x["domain"], 16),
-                "bus":      int(x["bus"], 16),
-                "slot":     int(x["slot"], 16),
-                "func":     int(x["func"], 16),
-                "vslot":    int(x["vslot"], 16)
+                'domain': int(x['domain'], 16),
+                'bus':    int(x['bus'], 16),
+                'slot':   int(x['slot'], 16),
+                'func':   int(x['func'], 16),
+                'vslot':  int(x['vslot'], 16)
             }
             devs.append(dev)
 
+    return devs
+
+def pci_dict_bin_to_str(pci_dev):
+    new_dev = pci_dev.copy()
+
+    new_dev['domain'] = '0x%04x' % pci_dev['domain']
+    new_dev['bus']    = '0x%02x' % pci_dev['bus']
+    new_dev['slot']   = '0x%02x' % pci_dev['slot']
+    new_dev['func']   = '0x%x'   % pci_dev['func']
+    new_dev['vslot']  = '0x%02x' % pci_dev['vslot']
+
+    return new_dev
+
+def attached_pci_dict(dom):
+    return map(pci_dict_bin_to_str, attached_pci_dict_bin(dom))
+
+def xm_pci_list(args):
+    (use_long, params) = arg_check_for_resource_list(args, "pci-list")
+
+    devs = attached_pci_dict_bin(params[0])
     if len(devs) == 0:
         return
 

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] xend: pass-through: Add pci_dict_bin_to_str(), Xen patchbot-unstable <=