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

Re: [Xen-devel] PCI Pass-through in Xen ARM: Draft 4



>>> On 02.09.15 at 16:45, <ian.campbell@xxxxxxxxxx> wrote:
> On Fri, 2015-08-14 at 08:34 -0600, Jan Beulich wrote:
>> > > > On 14.08.15 at 16:03, <stefano.stabellini@xxxxxxxxxxxxx> wrote:
>> > On Fri, 14 Aug 2015, Jan Beulich wrote:
>> > > > > > On 14.08.15 at 15:21, <stefano.stabellini@xxxxxxxxxxxxx> wrote:
>> > > > On Fri, 14 Aug 2015, Jan Beulich wrote:
>> > > > > it's even less clear how you'd expect to suppress this in other 
>> > > > > guest
>> > > > > OSes (Windows - afaik - being able to run on ARM certainly makes 
>> > > > > it
>> > > > > a candidate guest, even if maybe this doesn't work today), namely
>> > > > > such not having any pcifront. And I hope this design discussion 
>> > > > > isn't
>> > > > > limiting itself to Linux guests.
>> > > > 
>> > > > We'll write down in the ABI documentation that BARs reassignments 
>> > > > are
>> > > > not supported.
>> > > 
>> > > I.e. guests doing so Will Not Work (TM), with users (usually not 
>> > > reading
>> > > ABI docs) learning it the hard way. Not nice, but a way to handle it.
>> > 
>> > The target of the ABI docs is not users, but kernel developers, who
>> > should most definitely read them and fix their kernels.
>> 
>> ??? (We're talking of unmodified, closed source OSes here.)
> 
> On x86 such unmodified OSes would not use pciif.h/pcifront/back, instead
> they would be an HVM guest and get an HVM PCI bus emulated by the device
> model, which would (I suppose) support remapping BARs etc, since as you say
> unmodified OSes may require that.
> 
> AFAIK pcifront/back doesn't work for x86/HVM guests today, or at least not
> in general for "unmodified, closed source OSes".
> 
> AIUI it is the case today (and has always been the case) that x86/PV guests
> using pcifront/pciback cannot rewrite BARS, except to either all 1's or
> their original value (this is needed to probe the size or something AIUI).
> This is my reading of linux/drivers/xen/xen
> -pciback/conf_space_header.c:bar_write at least, which says:
>     /* For the BARs, only allow writes which write ~0 or
>      * the correct resource information
>      * (Needed for when the driver probes the resource usage)
>      */
> 
> ARM here is following the x86/PV model for PCI, not the x86/HVM emulated
> one.

I understood it that way, but my point is - how are you ever going to
support e.g. Windows guests on ARM? Are you really making yourself
dependent upon MS adding a Xen PCI frontend to it?

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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