All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
To: Avi Kivity <avi@redhat.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	Stefano Stabellini <Stefano.Stabellini@eu.citrix.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"Julien Grall (Intern)" <julien.grall@citrix.com>,
	Anthony Liguori <anthony@codemonkey.ws>,
	Julian Pidancet <julian.pidancet@citrix.com>
Subject: Re: [Qemu-devel] [QEMU][RFC PATCH 4/6] xen-pci: Register PCI in Xen
Date: Mon, 26 Mar 2012 14:56:44 +0100	[thread overview]
Message-ID: <alpine.DEB.2.00.1203261443070.15151@kaball-desktop> (raw)
In-Reply-To: <4F706213.2010806@redhat.com>

On Mon, 26 Mar 2012, Avi Kivity wrote:
> > > What about if two BARs (from different devices) are configured for the
> > > same address ranges?
> >
> > I think that it should have the same chance of happening as if there was
> > just one QEMU, because from the guest OS and firmware POV the emulated
> > hardware is the same. In any case Xen would return an error and QEMU can
> > either exit or try to cope with it.
> 
> How can qemu cope?  In a normal situation it's aware of all the devices,
> here it's not aware of any device (except the one it is managing).
> 
> You're trying to convert a hierarchical problem into a flat one with no
> communication.  What happens if one of the devices is a PCI-PCI bridge
> and it turns off its PCI window?  The devices behind it should no longer
> respond, yet they know nothing about it.
> 
> I think you need to preserve the hierarchy.  The host-pci bridge needs
> to talk to devices behind it, (as does a pci-pci bridge).

PCI bridges are a problem, in fact I was thinking to just assume that
there are no PCI Bridges with PCI devices behind them other than the
Host PCI Bridge for now.

There is going to be a need for some kind of communication between the
multiple QEMU instances, for example for ACPI power state changes and
PCI Bridges, like you wrote. So I think that at some point we'll need to
introduce a type of message that originates from one of the QEMU
instances (the first one especially) and goes to all the others.
It should probably be relayed by the hypervisor.

WARNING: multiple messages have this Message-ID (diff)
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
To: Avi Kivity <avi@redhat.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	Stefano Stabellini <Stefano.Stabellini@eu.citrix.com>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"Julien Grall (Intern)" <julien.grall@citrix.com>,
	Anthony Liguori <anthony@codemonkey.ws>,
	Julian Pidancet <julian.pidancet@citrix.com>
Subject: Re: [QEMU][RFC PATCH 4/6] xen-pci: Register PCI in Xen
Date: Mon, 26 Mar 2012 14:56:44 +0100	[thread overview]
Message-ID: <alpine.DEB.2.00.1203261443070.15151@kaball-desktop> (raw)
In-Reply-To: <4F706213.2010806@redhat.com>

On Mon, 26 Mar 2012, Avi Kivity wrote:
> > > What about if two BARs (from different devices) are configured for the
> > > same address ranges?
> >
> > I think that it should have the same chance of happening as if there was
> > just one QEMU, because from the guest OS and firmware POV the emulated
> > hardware is the same. In any case Xen would return an error and QEMU can
> > either exit or try to cope with it.
> 
> How can qemu cope?  In a normal situation it's aware of all the devices,
> here it's not aware of any device (except the one it is managing).
> 
> You're trying to convert a hierarchical problem into a flat one with no
> communication.  What happens if one of the devices is a PCI-PCI bridge
> and it turns off its PCI window?  The devices behind it should no longer
> respond, yet they know nothing about it.
> 
> I think you need to preserve the hierarchy.  The host-pci bridge needs
> to talk to devices behind it, (as does a pci-pci bridge).

PCI bridges are a problem, in fact I was thinking to just assume that
there are no PCI Bridges with PCI devices behind them other than the
Host PCI Bridge for now.

There is going to be a need for some kind of communication between the
multiple QEMU instances, for example for ACPI power state changes and
PCI Bridges, like you wrote. So I think that at some point we'll need to
introduce a type of message that originates from one of the QEMU
instances (the first one especially) and goes to all the others.
It should probably be relayed by the hypervisor.

  reply	other threads:[~2012-03-26 13:56 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-22 16:01 [Qemu-devel] [QEMU][RFC PATCH 0/6] QEMU disaggregation Julien Grall
2012-03-22 16:01 ` Julien Grall
2012-03-22 16:01 ` [Qemu-devel] [QEMU][RFC PATCH 1/6] option: Add -xen-dmid Julien Grall
2012-03-22 16:01   ` Julien Grall
2012-03-22 17:36   ` [Qemu-devel] " Jan Kiszka
2012-03-22 17:36     ` Jan Kiszka
2012-03-23 10:42     ` [Qemu-devel] " Stefano Stabellini
2012-03-23 10:42       ` Stefano Stabellini
2012-03-22 16:01 ` [Qemu-devel] [QEMU][RFC PATCH 2/6] xen: Add functions to register PCI and IO in Xen Julien Grall
2012-03-22 16:01   ` Julien Grall
2012-03-23 10:44   ` [Qemu-devel] " Stefano Stabellini
2012-03-23 10:44     ` Stefano Stabellini
2012-03-22 16:01 ` [Qemu-devel] [QEMU][RFC PATCH 3/6] memory: Add xen memory hook Julien Grall
2012-03-22 16:01   ` Julien Grall
2012-03-22 17:44   ` [Qemu-devel] " Jan Kiszka
2012-03-22 17:44     ` Jan Kiszka
2012-03-23 15:08     ` [Qemu-devel] " Julien Grall
2012-03-23 15:08       ` Julien Grall
2012-03-23 16:37       ` [Qemu-devel] " Jan Kiszka
2012-03-23 16:37         ` Jan Kiszka
2012-03-25 10:44         ` [Qemu-devel] " Avi Kivity
2012-03-25 10:44           ` Avi Kivity
2012-03-26 11:01           ` [Qemu-devel] " Stefano Stabellini
2012-03-26 11:01             ` Stefano Stabellini
2012-03-26 11:02             ` [Qemu-devel] " Avi Kivity
2012-03-26 11:02               ` Avi Kivity
2012-03-26 11:24               ` [Qemu-devel] " Julien Grall
2012-03-26 11:24                 ` Julien Grall
2012-03-26 13:13                 ` [Qemu-devel] " Avi Kivity
2012-03-26 13:13                   ` Avi Kivity
2012-03-23 16:47   ` [Qemu-devel] " Anthony Liguori
2012-03-23 16:47     ` Anthony Liguori
2012-03-22 16:01 ` [Qemu-devel] [QEMU][RFC PATCH 4/6] xen-pci: Register PCI in Xen Julien Grall
2012-03-22 16:01   ` Julien Grall
2012-03-22 17:47   ` [Qemu-devel] " Jan Kiszka
2012-03-22 17:47     ` Jan Kiszka
2012-03-22 19:58   ` [Qemu-devel] " Anthony Liguori
2012-03-22 19:58     ` Anthony Liguori
2012-03-23 11:02     ` [Qemu-devel] " Stefano Stabellini
2012-03-23 11:02       ` Stefano Stabellini
2012-03-25 12:09       ` [Qemu-devel] " Avi Kivity
2012-03-25 12:09         ` Avi Kivity
2012-03-26 11:45         ` [Qemu-devel] " Stefano Stabellini
2012-03-26 11:45           ` Stefano Stabellini
2012-03-26 11:57           ` [Qemu-devel] " Avi Kivity
2012-03-26 11:57             ` Avi Kivity
2012-03-26 12:20             ` [Qemu-devel] " Stefano Stabellini
2012-03-26 12:20               ` Stefano Stabellini
2012-03-26 12:33               ` [Qemu-devel] " Avi Kivity
2012-03-26 12:33                 ` Avi Kivity
2012-03-26 13:56                 ` Stefano Stabellini [this message]
2012-03-26 13:56                   ` Stefano Stabellini
2012-03-22 16:01 ` [Qemu-devel] [QEMU][RFC PATCH 5/6] xen-io: Handle the new ioreq type IOREQ_TYPE_PCI_CONFIG Julien Grall
2012-03-22 16:01   ` Julien Grall
2012-03-22 16:01 ` [Qemu-devel] [QEMU][RFC PATCH 6/6] xen: handle qemu disaggregation Julien Grall
2012-03-22 16:01   ` Julien Grall
2012-03-23 11:07   ` [Qemu-devel] " Stefano Stabellini
2012-03-23 11:07     ` Stefano Stabellini

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=alpine.DEB.2.00.1203261443070.15151@kaball-desktop \
    --to=stefano.stabellini@eu.citrix.com \
    --cc=anthony@codemonkey.ws \
    --cc=avi@redhat.com \
    --cc=julian.pidancet@citrix.com \
    --cc=julien.grall@citrix.com \
    --cc=qemu-devel@nongnu.org \
    --cc=xen-devel@lists.xensource.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.