This patch adds device-path command that converts SBDF into device path. ''SBDF'' format is "[SEG#:]BUS#:DEV#.FUNC#" ex) 0000:0a:1f.3 Device path format is "HID[:UID]-DEV#.FUNC#[-DEV#.FUNC#[...]]" ex) PNP0A08:0-2.0-0.0 The command can be executed as follows. # device_path 0a:1f.3 PNP0A08:0-2.0-0.0 Thanks, -- Yuji Shimada Signed-off-by: Yuji Shimada <shimada-yxb@necst.nec.co.jp> diff -r 5a60eb7fad79 Makefile --- a/Makefile Thu Apr 02 14:17:19 2009 +0100 +++ b/Makefile Mon Apr 06 16:30:11 2009 +0900 @@ -224,7 +224,7 @@ rm -rf $(D)$(LIBDIR)/xen/ rm -rf $(D)/usr/lib/xen/ rm -rf $(D)/usr/local/sbin/setmask $(D)/usr/local/sbin/xen* - rm -rf $(D)/usr/sbin/xen* $(D)/usr/sbin/netfix $(D)/usr/sbin/xm + rm -rf $(D)/usr/sbin/xen* $(D)/usr/sbin/netfix $(D)/usr/sbin/xm $(D)/usr/sbin/device-path rm -rf $(D)/usr/share/doc/xen rm -rf $(D)/usr/share/xen rm -rf $(D)/usr/share/man/man1/xen* diff -r 5a60eb7fad79 tools/misc/Makefile --- a/tools/misc/Makefile Thu Apr 02 14:17:19 2009 +0100 +++ b/tools/misc/Makefile Mon Apr 06 16:30:11 2009 +0900 @@ -22,7 +22,7 @@ INSTALL_BIN-$(CONFIG_X86) += xen-detect INSTALL_BIN := $(INSTALL_BIN-y) -INSTALL_SBIN-y := netfix xm xen-bugtool xen-python-path xend xenperf xsview xenpm +INSTALL_SBIN-y := netfix xm xen-bugtool xen-python-path xend xenperf xsview xenpm device-path INSTALL_SBIN := $(INSTALL_SBIN-y) DEFAULT_PYTHON_PATH := $(shell $(XEN_ROOT)/tools/python/get-path) diff -r 5a60eb7fad79 tools/misc/device-path --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/misc/device-path Mon Apr 06 16:30:11 2009 +0900 @@ -0,0 +1,78 @@ +#!/usr/bin/env python +# -*- mode: python; -*- +#===========================================================================+# This library is free software; you can redistribute it and/or +# modify it under the terms of version 2.1 of the GNU Lesser General Public +# License as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +#===========================================================================+# Copyright (c) 2009, NEC Corporation. +#===========================================================================+# This script converts SBDF into device path. +# ''SBDF'' format is "[SEG#:]BUS#:DEV#.FUNC#" +# ex) 0000:0a:1f.3 +# Device path format is "HID[:UID]-DEV#.FUNC#[-DEV#.FUNC#[...]]" +# ex) PNP0A08:0-2.0-0.0 +#===========================================================================+ +import sys +import os + +# add fallback path for non-native python path installs if needed +sys.path.append(''/usr/lib/python'') +sys.path.append(''/usr/lib64/python'') +from xen.util.pci import * + +SYSFS_ACPI_DEVS_PATH = ''/firmware/acpi/namespace/ACPI/_SB'' + +def find_hid_uid(dom, b, d, f): + sb_path = find_sysfs_mnt() + SYSFS_ACPI_DEVS_PATH + obj_list = os.listdir(sb_path) + for obj in obj_list: + obj_path = sb_path + ''/'' + obj.strip() + ''/'' + if os.path.exists(obj_path + ''seg'') and \ + os.path.exists(obj_path + ''bbn''): + seg = open(obj_path + ''seg'').read() + bbn = open(obj_path + ''bbn'').read() + if int(seg) == dom and int(bbn) == b: + hid = open(obj_path + ''hid'').read() + if os.path.exists(obj_path + ''uid'') is False: + path_str = hid.strip() + else: + uid = open(obj_path + ''uid'').read() + path_str = hid.strip() + '':'' + uid.strip() + return path_str + return None + +def make_device_path(dom, b, d, f): + dev = PciDevice(dom, b, d, f) + parent = dev.find_parent() + if parent is None: + path_str = find_hid_uid(dom, b, d, f) + path_str = path_str + ''-'' + hex(d).replace(''0x'', '''') + ''.'' + \ + hex(f).replace(''0x'', '''') + return path_str + (pdom, pb, pd, pf) = parent + path_str = make_device_path(pdom, pb, pd, pf) + path_str = path_str + ''-'' + hex(d).replace(''0x'', '''') + ''.'' + \ + hex(f).replace(''0x'', '''') + return path_str + +# main +if len(sys.argv) <> 2: + print ''Usage: device-path SBDF\n'' +else: + path = os.environ[''PATH''] + os.environ[''PATH''] = path + '':/sbin'' + '':/user/sbin'' + sbdf = sys.argv[1] + (dom, b, d, f) = parse_pci_name(sbdf) + path_str = make_device_path(dom, b, d, f) + print path_str _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On Mon, Apr 06, 2009 at 05:03:37PM +0900, Yuji Shimada wrote:> This patch adds device-path command that converts SBDF into device > path.[snip]> diff -r 5a60eb7fad79 tools/misc/device-path > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/tools/misc/device-path Mon Apr 06 16:30:11 2009 +0900[snip]> +SYSFS_ACPI_DEVS_PATH = ''/firmware/acpi/namespace/ACPI/_SB'' > + > +def find_hid_uid(dom, b, d, f): > + sb_path = find_sysfs_mnt() + SYSFS_ACPI_DEVS_PATH > + obj_list = os.listdir(sb_path) > + for obj in obj_list: > + obj_path = sb_path + ''/'' + obj.strip() + ''/'' > + if os.path.exists(obj_path + ''seg'') and \ > + os.path.exists(obj_path + ''bbn''): > + seg = open(obj_path + ''seg'').read() > + bbn = open(obj_path + ''bbn'').read() > + if int(seg) == dom and int(bbn) == b: > + hid = open(obj_path + ''hid'').read() > + if os.path.exists(obj_path + ''uid'') is False: > + path_str = hid.strip() > + else: > + uid = open(obj_path + ''uid'').read() > + path_str = hid.strip() + '':'' + uid.strip() > + return path_str > + return NoneI don''t know how critical this piece of code is to the overall functionality in this tool, but be warned that the path being used here was removed from sysfs in upstream kernel quite a while ago To quote an old copy of Documentation/feature-removal-schedule.txt What: /sys/firmware/acpi/namespace When: 2.6.21 Why: The ACPI namespace is effectively the symbol list for the BIOS. The device names are completely arbitrary and have no place being exposed to user-space. For those interested in the BIOS ACPI namespace, the BIOS can be extracted and disassembled with acpidump and iasl as documented in the pmtools package here: http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils Regards, Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On 06/04/2009 15:06, "Daniel P. Berrange" <berrange@redhat.com> wrote:> I don''t know how critical this piece of code is to the overall functionality > in this tool, but be warned that the path being used here was removed from > sysfs in upstream kernel quite a while agoThat makes the script not very generally usable then. Unless there is some other way to get this info easily, I''ll just revert the changeset that checked it in. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On Mon, 6 Apr 2009 15:06:00 +0100 "Daniel P. Berrange" <berrange@redhat.com> wrote:> On Mon, Apr 06, 2009 at 05:03:37PM +0900, Yuji Shimada wrote: > > This patch adds device-path command that converts SBDF into device > > path. > > [snip] > > > diff -r 5a60eb7fad79 tools/misc/device-path > > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > > +++ b/tools/misc/device-path Mon Apr 06 16:30:11 2009 +0900 > > > [snip] > > > +SYSFS_ACPI_DEVS_PATH = ''/firmware/acpi/namespace/ACPI/_SB'' > > + > > +def find_hid_uid(dom, b, d, f): > > + sb_path = find_sysfs_mnt() + SYSFS_ACPI_DEVS_PATH > > + obj_list = os.listdir(sb_path) > > + for obj in obj_list: > > + obj_path = sb_path + ''/'' + obj.strip() + ''/'' > > + if os.path.exists(obj_path + ''seg'') and \ > > + os.path.exists(obj_path + ''bbn''): > > + seg = open(obj_path + ''seg'').read() > > + bbn = open(obj_path + ''bbn'').read() > > + if int(seg) == dom and int(bbn) == b: > > + hid = open(obj_path + ''hid'').read() > > + if os.path.exists(obj_path + ''uid'') is False: > > + path_str = hid.strip() > > + else: > > + uid = open(obj_path + ''uid'').read() > > + path_str = hid.strip() + '':'' + uid.strip() > > + return path_str > > + return None > > I don''t know how critical this piece of code is to the overall functionality > in this tool, but be warned that the path being used here was removed from > sysfs in upstream kernel quite a while ago > > To quote an old copy of Documentation/feature-removal-schedule.txt > > What: /sys/firmware/acpi/namespace > When: 2.6.21 > Why: The ACPI namespace is effectively the symbol list for > the BIOS. The device names are completely arbitrary > and have no place being exposed to user-space. > > For those interested in the BIOS ACPI namespace, > the BIOS can be extracted and disassembled with acpidump > and iasl as documented in the pmtools package here: > http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils >It is difficult for users to get device path of particular device. So I made this command that converts SBDF into device path. SBDF of devices can be changed at boot time. But device path is not changed at boot time. I have already added the function to specify guest passthrough device by device path with "guestdev" boot parameter. The linux-2.6.18-xen kernel changeset is the following. # changeset fad85221407bf32df2574bca54cba730748343a2 # changeset 2fdc121e9b5d76464b3efd47d711c58253ef6348 # changeset cfb171ddbb333df9671a1da62e40122a56213ab4 # changeset 79e82ae1bad02c0dfb504db3153599e52a0affb3 Is there any kernel that has already merged above changeset? If yes, could you tell me where it is? If no, I think it is not necessary to make device-path script support upstream linux. Thanks, -- Yuji Shimada _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On 07/04/2009 08:29, "Yuji Shimada" <shimada-yxb@necst.nec.co.jp> wrote:> Is there any kernel that has already merged above changeset? > If yes, could you tell me where it is? > If no, I think it is not necessary to make device-path script support > upstream linux.It''ll have to be ported to pv_ops soon enough (or be rendered obsolete), and what will we do there? -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
On Tue, 07 Apr 2009 16:29:05 +0900 Yuji Shimada <shimada-yxb@necst.nec.co.jp> wrote:> On Mon, 6 Apr 2009 15:06:00 +0100 > "Daniel P. Berrange" <berrange@redhat.com> wrote: > > > On Mon, Apr 06, 2009 at 05:03:37PM +0900, Yuji Shimada wrote: > > > This patch adds device-path command that converts SBDF into device > > > path. > > > > [snip] > > > > > diff -r 5a60eb7fad79 tools/misc/device-path > > > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > > > +++ b/tools/misc/device-path Mon Apr 06 16:30:11 2009 +0900 > > > > > > [snip] > > > > > +SYSFS_ACPI_DEVS_PATH = ''/firmware/acpi/namespace/ACPI/_SB'' > > > + > > > +def find_hid_uid(dom, b, d, f): > > > + sb_path = find_sysfs_mnt() + SYSFS_ACPI_DEVS_PATH > > > + obj_list = os.listdir(sb_path) > > > + for obj in obj_list: > > > + obj_path = sb_path + ''/'' + obj.strip() + ''/'' > > > + if os.path.exists(obj_path + ''seg'') and \ > > > + os.path.exists(obj_path + ''bbn''): > > > + seg = open(obj_path + ''seg'').read() > > > + bbn = open(obj_path + ''bbn'').read() > > > + if int(seg) == dom and int(bbn) == b: > > > + hid = open(obj_path + ''hid'').read() > > > + if os.path.exists(obj_path + ''uid'') is False: > > > + path_str = hid.strip() > > > + else: > > > + uid = open(obj_path + ''uid'').read() > > > + path_str = hid.strip() + '':'' + uid.strip() > > > + return path_str > > > + return None > > > > I don''t know how critical this piece of code is to the overall functionality > > in this tool, but be warned that the path being used here was removed from > > sysfs in upstream kernel quite a while ago > > > > To quote an old copy of Documentation/feature-removal-schedule.txt > > > > What: /sys/firmware/acpi/namespace > > When: 2.6.21 > > Why: The ACPI namespace is effectively the symbol list for > > the BIOS. The device names are completely arbitrary > > and have no place being exposed to user-space. > > > > For those interested in the BIOS ACPI namespace, > > the BIOS can be extracted and disassembled with acpidump > > and iasl as documented in the pmtools package here: > > http://ftp.kernel.org/pub/linux/kernel/people/lenb/acpi/utils > > > > It is difficult for users to get device path of particular device. > So I made this command that converts SBDF into device path. > > SBDF of devices can be changed at boot time. But device path is not > changed at boot time. > I have already added the function to specify guest passthrough device > by device path with "guestdev" boot parameter. > The linux-2.6.18-xen kernel changeset is the following. > > # changeset fad85221407bf32df2574bca54cba730748343a2 > # changeset 2fdc121e9b5d76464b3efd47d711c58253ef6348 > # changeset cfb171ddbb333df9671a1da62e40122a56213ab4 > # changeset 79e82ae1bad02c0dfb504db3153599e52a0affb3Sorry, above changesets are wrong. They are correct changesets. # changeset 765 : fad85221407bf32df2574bca54cba730748343a2 # changeset 766 : 2fdc121e9b5d76464b3efd47d711c58253ef6348 # changeset 767 : 78d81e85e8cd8a0a26bc9b760c67d435341f43f8 # changeset 768 : cfb171ddbb333df9671a1da62e40122a56213ab4 Thanks, -- Yuji Shimada _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Yuji Shimada writes ("[Xen-devel] [PATCH] Add device-path command."):> This patch adds device-path command that converts SBDF into device > path.This program should have some more specific name, at the very least. Ian. _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Thanks for all of your comments. I change command name from ''device-path''to ''sbdf2devicepath''. And I add error message in case ACPI namespace directory does not present. Thanks, -- Yuji Shimada This patch adds ''sbdf2devicepath'' command that converts SBDF into device path. ''SBDF'' format is "[SEG#:]BUS#:DEV#.FUNC#" ex) 0000:0a:1f.3 Device path format is "HID[:UID]-DEV#.FUNC#[-DEV#.FUNC#[...]]" ex) PNP0A08:0-2.0-0.0 The command can be executed as follows. # sbdf2devicepath 0a:1f.3 PNP0A08:0-2.0-0.0 Signed-off-by: Yuji Shimada <shimada-yxb@necst.nec.co.jp> diff -r accf139b2eb9 Makefile --- a/Makefile Mon Apr 06 21:12:33 2009 +0100 +++ b/Makefile Thu Apr 09 17:12:34 2009 +0900 @@ -224,7 +224,7 @@ rm -rf $(D)$(LIBDIR)/xen/ rm -rf $(D)/usr/lib/xen/ rm -rf $(D)/usr/local/sbin/setmask $(D)/usr/local/sbin/xen* - rm -rf $(D)/usr/sbin/xen* $(D)/usr/sbin/netfix $(D)/usr/sbin/xm + rm -rf $(D)/usr/sbin/xen* $(D)/usr/sbin/netfix $(D)/usr/sbin/xm $(D)/usr/sbin/sbdf2devicepath rm -rf $(D)/usr/share/doc/xen rm -rf $(D)/usr/share/xen rm -rf $(D)/usr/share/man/man1/xen* diff -r accf139b2eb9 tools/misc/Makefile --- a/tools/misc/Makefile Mon Apr 06 21:12:33 2009 +0100 +++ b/tools/misc/Makefile Thu Apr 09 17:12:34 2009 +0900 @@ -22,7 +22,7 @@ INSTALL_BIN-$(CONFIG_X86) += xen-detect INSTALL_BIN := $(INSTALL_BIN-y) -INSTALL_SBIN-y := xm xen-bugtool xen-python-path xend xenperf xsview xenpm +INSTALL_SBIN-y := xm xen-bugtool xen-python-path xend xenperf xsview xenpm sbdf2devicepath INSTALL_SBIN := $(INSTALL_SBIN-y) DEFAULT_PYTHON_PATH := $(shell $(XEN_ROOT)/tools/python/get-path) diff -r accf139b2eb9 tools/misc/sbdf2devicepath --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tools/misc/sbdf2devicepath Thu Apr 09 17:12:34 2009 +0900 @@ -0,0 +1,82 @@ +#!/usr/bin/env python +# -*- mode: python; -*- +#===========================================================================+# This library is free software; you can redistribute it and/or +# modify it under the terms of version 2.1 of the GNU Lesser General Public +# License as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +#===========================================================================+# Copyright (c) 2009, NEC Corporation. +#===========================================================================+# This script converts SBDF into device path. +# ''SBDF'' format is "[SEG#:]BUS#:DEV#.FUNC#" +# ex) 0000:0a:1f.3 +# Device path format is "HID[:UID]-DEV#.FUNC#[-DEV#.FUNC#[...]]" +# ex) PNP0A08:0-2.0-0.0 +#============================================================================+ +import sys +import os + +# add fallback path for non-native python path installs if needed +sys.path.append(''/usr/lib/python'') +sys.path.append(''/usr/lib64/python'') +from xen.util.pci import * + +SYSFS_ACPI_DEVS_PATH = ''/firmware/acpi/namespace/ACPI/_SB'' + +def find_hid_uid(dom, b, d, f): + obj_list = os.listdir(sb_path) + for obj in obj_list: + obj_path = sb_path + ''/'' + obj.strip() + ''/'' + if os.path.exists(obj_path + ''seg'') and \ + os.path.exists(obj_path + ''bbn''): + seg = open(obj_path + ''seg'').read() + bbn = open(obj_path + ''bbn'').read() + if int(seg) == dom and int(bbn) == b: + hid = open(obj_path + ''hid'').read() + if os.path.exists(obj_path + ''uid'') is False: + path_str = hid.strip() + else: + uid = open(obj_path + ''uid'').read() + path_str = hid.strip() + '':'' + uid.strip() + return path_str + return None + +def make_device_path(dom, b, d, f): + dev = PciDevice(dom, b, d, f) + parent = dev.find_parent() + if parent is None: + path_str = find_hid_uid(dom, b, d, f) + path_str = path_str + ''-'' + hex(d).replace(''0x'', '''') + ''.'' + \ + hex(f).replace(''0x'', '''') + return path_str + (pdom, pb, pd, pf) = parent + path_str = make_device_path(pdom, pb, pd, pf) + path_str = path_str + ''-'' + hex(d).replace(''0x'', '''') + ''.'' + \ + hex(f).replace(''0x'', '''') + return path_str + +# main +if len(sys.argv) <> 2: + print ''Usage: sbdf2devicepath SBDF\n'' +else: + sb_path = find_sysfs_mnt() + SYSFS_ACPI_DEVS_PATH + if os.path.exists(sb_path): + path = os.environ[''PATH''] + os.environ[''PATH''] = path + '':/sbin'' + '':/user/sbin'' + sbdf = sys.argv[1] + (dom, b, d, f) = parse_pci_name(sbdf) + path_str = make_device_path(dom, b, d, f) + print path_str + else: + print sb_path + '' not found.\n'' + print ''This command is only for linux 2.6.18.8 xen kernel.\n'' _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Yuji Shimada
2009-Apr-15 06:00 UTC
[Xen-devel] [PATCH] Modify makefiles to install/uninstall sbdf2devicepath command.
This patch modifies makefiles to install/uninstall the command. "sbdf2devicepath" command is not installed/uninstalled by the following changeset. http://xenbits.xensource.com/xen-unstable.hg?rev/0b9b6d5a61c1 Thanks, -- Yuji Shimada Signed-off-by: Yuji Shimada <shimada-yxb@necst.nec.co.jp> diff -r 94ffd85005c5 Makefile --- a/Makefile Tue Apr 14 15:23:53 2009 +0100 +++ b/Makefile Wed Apr 15 11:58:35 2009 +0900 @@ -220,7 +220,7 @@ rm -rf $(D)$(LIBDIR)/xen/ rm -rf $(D)/usr/lib/xen/ rm -rf $(D)/usr/local/sbin/setmask $(D)/usr/local/sbin/xen* - rm -rf $(D)/usr/sbin/xen* $(D)/usr/sbin/netfix $(D)/usr/sbin/xm + rm -rf $(D)/usr/sbin/xen* $(D)/usr/sbin/netfix $(D)/usr/sbin/xm $(D)/usr/sbin/sbdf2devicepath rm -rf $(D)/usr/share/doc/xen rm -rf $(D)/usr/share/xen rm -rf $(D)/usr/share/man/man1/xen* diff -r 94ffd85005c5 tools/misc/Makefile --- a/tools/misc/Makefile Tue Apr 14 15:23:53 2009 +0100 +++ b/tools/misc/Makefile Wed Apr 15 11:58:35 2009 +0900 @@ -22,7 +22,7 @@ INSTALL_BIN-$(CONFIG_X86) += xen-detect INSTALL_BIN := $(INSTALL_BIN-y) -INSTALL_SBIN-y := xm xen-bugtool xen-python-path xend xenperf xsview xenpm +INSTALL_SBIN-y := xm xen-bugtool xen-python-path xend xenperf xsview xenpm sbdf2devicepath INSTALL_SBIN := $(INSTALL_SBIN-y) DEFAULT_PYTHON_PATH := $(shell $(XEN_ROOT)/tools/python/get-path) _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Keir Fraser
2009-Apr-15 07:42 UTC
[Xen-devel] Re: [PATCH] Modify makefiles to install/uninstall sbdf2devicepath command.
On 15/04/2009 07:00, "Yuji Shimada" <shimada-yxb@necst.nec.co.jp> wrote:> This patch modifies makefiles to install/uninstall the command. > > "sbdf2devicepath" command is not installed/uninstalled by the > following changeset. > > http://xenbits.xensource.com/xen-unstable.hg?rev/0b9b6d5a61c1I don''t think this is generically useful enough to install on all systems. We''ll keep it as a helpful script that users can be pointed at if doing advanced passthru stuff. -- Keir _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel