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

Re: [Xen-devel] [patch] passthrough: Fix PCI hot-plug option parsing

To: Simon Horman <horms@xxxxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: Re: [Xen-devel] [patch] passthrough: Fix PCI hot-plug option parsing
From: Masaki Kanno <kanno.masaki@xxxxxxxxxxxxxx>
Date: Wed, 13 May 2009 11:23:06 +0900
Cc: Yuji Shimada <shimada-yxb@xxxxxxxxxxxxxxx>, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>, Qing He <qing.he@xxxxxxxxx>, Dexuan Cui <dexuan.cui@xxxxxxxxx>
Delivery-date: Tue, 12 May 2009 19:23:33 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20090513013119.GA7492@xxxxxxxxxxxx>
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>
References: <20090513013119.GA7492@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Hi Simon,

The following line includes tab indent.

>+              opts)

Best regards,
 Kan

Wed, 13 May 2009 11:31:19 +1000, Simon Horman wrote:

>When a PCI function is passed-through extra options may be passed through.
>In the case of boot-time PCI pass-through the documented format is:
>    [dom:]bus:dev.slot[@vslot][[,opt]...]
>    e.g.
>    00:01.00.1@7,msitranslate=1
>
>In the case of PCI hot-plug the xm pci-attach command take the following
>arguments:
>    [-o opt[,opt]...] [dom:]bus:dev.slot [vslot]
>    e.g.
>    -o msitranslate=1 00:01.00.1 7
>
>    These xm ends up passing these to xem-qemu as:
>    [dom:]bus:dev.slot[[,opt]...][@vslot]
>    e.g.
>    00:01.00.1,msitranslate=1@7
>
>    Note that the option and the vslot have are transposed when
>    compared to the format used by boot-time PCI pass-through.
>
>The parser inside qemu-xen can only handle the format used by
>boot-time PCI pass-through and because of this ignores
>any options passed by hot-plug.
>
>This patch alters format used by hot-plug to match the parser.
>
>Cc: Dexuan Cui <dexuan.cui@xxxxxxxxx>
>Cc: Qing He <qing.he@xxxxxxxxx>
>Cc: Yuji Shimada <shimada-yxb@xxxxxxxxxxxxxxx>
>Cc: Masaki Kanno <kanno.masaki@xxxxxxxxxxxxxx>
>Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
>
>--- 
>
>This bug does not appear be a recent regression.
>
>This bug seems important enough to fix for 3.4, though
>it could be argued that if it hasn't been noticed for a while
>there aren't many (any?) users of this.
>
>Index: xen-unstable.hg/tools/python/xen/xend/XendDomainInfo.py
>===================================================================
>--- xen-unstable.hg.orig/tools/python/xen/xend/XendDomainInfo.py       2009-05
-13
> 11:07:38.000000000 +1000
>+++ xen-unstable.hg/tools/python/xen/xend/XendDomainInfo.py    2009-05-13 11:
>11:36.000000000 +1000
>@@ -706,12 +706,12 @@ class XendDomainInfo:
>                 config_opts = map(lambda (x, y): x+'='+y, config_opts)
>                 opts = ',' + reduce(lambda x, y: x+','+y, config_opts)
> 
>-            bdf_str = "%s:%s:%s.%s%s@%s" % (new_dev['domain'],
>+            bdf_str = "%s:%s:%s.%s@%s%s" % (new_dev['domain'],
>                 new_dev['bus'],
>                 new_dev['slot'],
>                 new_dev['func'],
>-                opts,
>-                new_dev['vslot'])
>+                new_dev['vslot'],
>+              opts)
>             self.image.signalDeviceModel('pci-ins', 'pci-inserted', bdf_str)
> 
>             vslot = xstransact.Read("/local/domain/0/device-model/%i/
>parameter"
>
>_______________________________________________
>Xen-devel mailing list
>Xen-devel@xxxxxxxxxxxxxxxxxxx
>http://lists.xensource.com/xen-devel


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