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, RFC 0/7] PCI multi-segment support

To: "Ian Jackson" <Ian.Jackson@xxxxxxxxxxxxx>, "Keir Fraser" <keir.xen@xxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH, RFC 0/7] PCI multi-segment support
From: "Jan Beulich" <JBeulich@xxxxxxxx>
Date: Mon, 05 Sep 2011 14:49:26 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Mon, 05 Sep 2011 06:50:04 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <CA8A8E49.20517%keir.xen@xxxxxxxxx>
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: <4E64E8460200007800054ADB@xxxxxxxxxxxxxxxxxxxx> <CA8A8E49.20517%keir.xen@xxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>> On 05.09.11 at 15:33, Keir Fraser <keir.xen@xxxxxxxxx> wrote:
> On 05/09/2011 14:18, "Jan Beulich" <JBeulich@xxxxxxxx> wrote:
> 
>>>>> On 25.08.11 at 16:54, "Jan Beulich" <JBeulich@xxxxxxxxxx> wrote:
>>> In order for Xen to be able to boot on systems with multiple PCI segments
>>> (also called domains), a number of changes are necessary to the
>>> hypervisor, the hypercall interface, the tools, and the Dom0 kernel, as
>>> in most code paths and definitions there were not even provisions for
>>> passing a segment number.
>>> 
>>> The hypercall interface changes may need some discussion before
>>> applying the patches, in particular
>>> 
>>> - whether the way PHYSDEVOP_map_pirq gets re-used is acceptable,
>>>   or whether alternatively we should define a replacement one sub-
>>>   hypercall
>>> - whether PHYSDEVOP_manage_pci_* should be deprecated
>>> - whether the bit assignments for the four uses of machine_bdf in
>>>   the domctl interface can be re-defined
>> 
>> No comment from either of you on the proposed changes?
> 
> I'm personally fine with folding segment into the bus field. Otherwise we
> just end up with more compat cruft.
> 
> I don't have an opinion on the PHYSDEVOP_manage_pci_* hypercalls. In fact I
> don't know much about them at all.
> 
> I've always considered the domctl interface subject to change, but you don't
> seem to redefine anything that already exists? You just give meaning to bits
> 24-31 of an existing 32-bit parameter?

I'm trying to avoid incompatible changes when possible (due to
out-of-tree consumers like libvirt, and due to the hacks required to
use domctl interfaces from the kernel). Now here we need 16 bits, but
have two sets of 8 (at bottom and top), hence I'd favor doing an
incompatible change here (moving the bdf bits down to 0...15, and
using 16...31 for the segment), perhaps renaming the field to
machine_sbdf (to force compile-time noticing of the change at least
for those that actually use our headers). But as the odd bit assignment
could have other (hidden) reasons I coded things first to not do any
re-assignments.

Jan


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