xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: "Jan Beulich" <JBeulich@suse.com>,
	"Roger Pau Monné" <roger.pau@citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	Tim Deegan <tim@xen.org>, Paul Durrant <paul.durrant@citrix.com>,
	David Vrabel <david.vrabel@citrix.com>,
	xen-devel <xen-devel@lists.xenproject.org>,
	samuel.thibault@ens-lyon.org,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>
Subject: Re: HVMlite ABI specification DRAFT A
Date: Fri, 5 Feb 2016 11:04:00 +0000	[thread overview]
Message-ID: <56B481A0.5000805@citrix.com> (raw)
In-Reply-To: <56B48A1E02000078000CEF6F@prv-mh.provo.novell.com>

On 05/02/16 10:40, Jan Beulich wrote:
>>>> On 05.02.16 at 10:50, <roger.pau@citrix.com> wrote:
>> For legacy PCI interrupts, we can parse the MADT inside of Xen in order
>> to properly setup the lines/overwrites and inject the interrupts that
>> are not handled by Xen straight into the hardware domain. This will
>> require us to be able to emulate the same topology as what is found in
>> native (eg: if there are two IO APICs in the hardware we should also
>> provide two emulated ones to the hw domain).
> I don't think MADT contains all the needed information, or else we
> wouldn't need PHYSDEVOP_setup_gsi.
>
>> As for PCI config space accesses, don't we already do that? We trap on
>> access to the 0xcf8 io port.
> We intercept that, but iirc we do no translation (and for DomU
> these get forwarded to qemu anyway).

This is one aspect which will change with the proposed plans to have a
small host bridge/root complex in Xen.

Currently, cf8/cf8 handling is already done partly in Xen because of
multiple ioreq server handling.  However, the current setup completely
fails if the guest attempts to renumber the PCI Buses, and requires each
ioreq server to coordinate with their introduced topology.

A small host bridge and root complex in Xen solves all of these problems
for us, reduces the number of broadcast ioreqs Xen needs to make, and
allows multiple ioreq servers to function completely without any
self-coordination.

>
>>>>>  * `eflags`: bit 17 (VM) must be cleared. Bit 9 (IF) must be cleared.
>>>>>    Bit 8 (TF) must be cleared. Other bits are all unspecified.
>>>> I would also specify that the direction flag shall be clear, to prevent
>>>> all kernels needing to `cld` on entry.
>>> In which case IOPL and AC state should perhaps also be nailed down?
>>> Possibly even all of the control ones (leaving only the status flags
>>> unspecified)?
>> Status flag? Why don't we just say that all user-settable bits in the
>> status register will be set to 0 (or cleared)?
> Would be an option too.

What about the ID bit, which probably ought to be set?

~Andrew

  reply	other threads:[~2016-02-05 11:04 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-04 17:48 HVMlite ABI specification DRAFT A Roger Pau Monné
2016-02-04 18:22 ` Andrew Cooper
2016-02-04 19:33   ` Roger Pau Monné
2016-02-04 20:24     ` Boris Ostrovsky
2016-02-05 14:44     ` Ian Campbell
2016-02-05 14:46       ` Roger Pau Monné
2016-02-05  9:12   ` Jan Beulich
2016-02-05  9:50     ` Roger Pau Monné
2016-02-05 10:40       ` Jan Beulich
2016-02-05 11:04         ` Andrew Cooper [this message]
2016-02-05 11:07           ` Jan Beulich
2016-02-05 11:30         ` Roger Pau Monné
2016-02-05 11:45           ` Jan Beulich
2016-02-05 11:50             ` Roger Pau Monné
2016-02-05 13:22               ` Jan Beulich
2016-02-05 14:27                 ` Roger Pau Monné
2016-02-05 14:31                   ` Jan Beulich
2016-02-05 15:00                     ` Roger Pau Monné
2016-02-05 15:29                       ` Jan Beulich
2016-02-05 15:35                         ` Roger Pau Monné
2016-02-04 18:38 ` Boris Ostrovsky
2016-02-04 18:51   ` Samuel Thibault
2016-02-04 19:21     ` Roger Pau Monné
2016-02-04 20:17       ` Boris Ostrovsky
2016-02-04 20:29         ` Konrad Rzeszutek Wilk
2016-02-04 20:37           ` Andrew Cooper
2016-02-05  8:23         ` Roger Pau Monné
2016-02-04 22:23       ` Samuel Thibault
2016-02-04 19:09 ` Samuel Thibault
2016-02-04 19:18   ` Boris Ostrovsky
2016-02-04 22:21     ` Samuel Thibault
2016-02-04 22:25       ` Andrew Cooper
2016-02-04 22:41         ` Samuel Thibault
2016-02-05 10:20 ` Ian Campbell
2016-02-05 16:01 ` Tim Deegan
2016-02-05 16:13   ` Roger Pau Monné
2016-02-05 17:14   ` Andrew Cooper
2016-02-05 18:05     ` Tim Deegan
2016-02-05 18:44       ` Andrew Cooper
2016-02-08 12:10     ` Stefano Stabellini
2016-02-08 13:21       ` David Vrabel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56B481A0.5000805@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=JBeulich@suse.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=paul.durrant@citrix.com \
    --cc=roger.pau@citrix.com \
    --cc=samuel.thibault@ens-lyon.org \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=tim@xen.org \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xenproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).