All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoffer Dall <christoffer.dall@linaro.org>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: ard.biesheuvel@linaro.org, marc.zyngier@arm.com,
	catalin.marinas@arm.com, "Michael S. Tsirkin" <mst@redhat.com>,
	qemu-devel@nongnu.org, Laszlo Ersek <lersek@redhat.com>,
	kvmarm@lists.cs.columbia.edu
Subject: Re: [RFC/RFT PATCH v2 0/3] KVM: Introduce KVM_MEM_UNCACHED
Date: Thu, 14 May 2015 14:24:13 +0200	[thread overview]
Message-ID: <20150514122413.GV32765@cbox> (raw)
In-Reply-To: <55549051.1090007@redhat.com>

On Thu, May 14, 2015 at 02:08:49PM +0200, Paolo Bonzini wrote:
> 
> 
> On 14/05/2015 14:00, Christoffer Dall wrote:
> > So, getting back to my original question.  Is the point then that UEFI
> > must assume (from ACPI/DT) the cache-coherency properties of the PCI
> > controller which exists in hardware on the system you're running on,
> > even for the virtual PCI bus because that will be the semantics for
> > assigned devices?
> > 
> > And in that case, we have no way to distinguish between passthrough
> > devices and virtual devices plugged into the virtual PCI bus?
> 
> Well, we could use the subsystem id.  But it's a hack, and may cause
> incompatibilities with some drivers.  Michael, any ideas?
> 
> > What about the idea of having two virtual PCI buses on your system where
> > one is always cache-coherent and uses for virtual devices, and the other
> > is whatever the hardware is and used for passthrough devices?
> 
> I think that was rejected before.
> 

Do you remember where?  I just remember Catalin mentioning the idea to
me verbally.

Besides the slightly heavy added use of resources etc. it seems like it
would address some of our issues in a good way.

But I'm still not sure why UEFI/Linux currently sees our PCI bus as
being non-coherent when in fact it is and we have no passthrough issues
currently.  Are all PCI controllers always non-coherent for some reason
and therefore we model it as such too?

-Christoffer

WARNING: multiple messages have this Message-ID (diff)
From: Christoffer Dall <christoffer.dall@linaro.org>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: peter.maydell@linaro.org, Andrew Jones <drjones@redhat.com>,
	ard.biesheuvel@linaro.org, marc.zyngier@arm.com,
	catalin.marinas@arm.com, "Michael S. Tsirkin" <mst@redhat.com>,
	qemu-devel@nongnu.org, agraf@suse.de,
	j.fanguede@virtualopensystems.com,
	Laszlo Ersek <lersek@redhat.com>,
	kvmarm@lists.cs.columbia.edu, m.smarduch@samsung.com
Subject: Re: [Qemu-devel] [RFC/RFT PATCH v2 0/3] KVM: Introduce KVM_MEM_UNCACHED
Date: Thu, 14 May 2015 14:24:13 +0200	[thread overview]
Message-ID: <20150514122413.GV32765@cbox> (raw)
In-Reply-To: <55549051.1090007@redhat.com>

On Thu, May 14, 2015 at 02:08:49PM +0200, Paolo Bonzini wrote:
> 
> 
> On 14/05/2015 14:00, Christoffer Dall wrote:
> > So, getting back to my original question.  Is the point then that UEFI
> > must assume (from ACPI/DT) the cache-coherency properties of the PCI
> > controller which exists in hardware on the system you're running on,
> > even for the virtual PCI bus because that will be the semantics for
> > assigned devices?
> > 
> > And in that case, we have no way to distinguish between passthrough
> > devices and virtual devices plugged into the virtual PCI bus?
> 
> Well, we could use the subsystem id.  But it's a hack, and may cause
> incompatibilities with some drivers.  Michael, any ideas?
> 
> > What about the idea of having two virtual PCI buses on your system where
> > one is always cache-coherent and uses for virtual devices, and the other
> > is whatever the hardware is and used for passthrough devices?
> 
> I think that was rejected before.
> 

Do you remember where?  I just remember Catalin mentioning the idea to
me verbally.

Besides the slightly heavy added use of resources etc. it seems like it
would address some of our issues in a good way.

But I'm still not sure why UEFI/Linux currently sees our PCI bus as
being non-coherent when in fact it is and we have no passthrough issues
currently.  Are all PCI controllers always non-coherent for some reason
and therefore we model it as such too?

-Christoffer

  reply	other threads:[~2015-05-14 12:14 UTC|newest]

Thread overview: 102+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-13 11:31 [RFC/RFT PATCH v2 0/3] KVM: Introduce KVM_MEM_UNCACHED Andrew Jones
2015-05-13 11:31 ` [Qemu-devel] " Andrew Jones
2015-05-13 11:31 ` [RFC/RFT PATCH v2 1/3] arm/arm64: pageattr: add set_memory_nc Andrew Jones
2015-05-13 11:31   ` [Qemu-devel] " Andrew Jones
2015-05-14 11:05   ` Christoffer Dall
2015-05-14 11:05     ` [Qemu-devel] " Christoffer Dall
2015-05-14 13:46     ` Andrew Jones
2015-05-14 13:46       ` [Qemu-devel] " Andrew Jones
2015-05-15 14:51       ` Christoffer Dall
2015-05-15 14:51         ` [Qemu-devel] " Christoffer Dall
2015-05-18 15:53       ` Catalin Marinas
2015-05-18 15:53         ` [Qemu-devel] " Catalin Marinas
2015-05-19 10:03         ` Andrew Jones
2015-05-19 10:03           ` [Qemu-devel] " Andrew Jones
2015-05-19 11:18           ` Catalin Marinas
2015-05-19 11:18             ` [Qemu-devel] " Catalin Marinas
2015-05-19 11:38             ` Andrew Jones
2015-05-19 11:38               ` [Qemu-devel] " Andrew Jones
2015-05-20 10:01             ` Christoffer Dall
2015-05-20 10:01               ` [Qemu-devel] " Christoffer Dall
2015-05-20 11:24               ` Catalin Marinas
2015-05-20 11:24                 ` [Qemu-devel] " Catalin Marinas
2015-05-23  1:08         ` Mario Smarduch
2015-05-23  1:08           ` [Qemu-devel] " Mario Smarduch
2015-05-25 17:11           ` Andrew Jones
2015-05-25 17:11             ` Andrew Jones
2015-05-27  1:08             ` Mario Smarduch
2015-05-27  1:08               ` Mario Smarduch
2015-05-13 11:31 ` [RFC/RFT PATCH v2 2/3] KVM: promote KVM_MEMSLOT_INCOHERENT to uapi Andrew Jones
2015-05-13 11:31   ` [Qemu-devel] " Andrew Jones
2015-05-14 10:12   ` Paolo Bonzini
2015-05-14 10:12     ` [Qemu-devel] " Paolo Bonzini
2015-05-14 10:34   ` Christoffer Dall
2015-05-14 10:34     ` [Qemu-devel] " Christoffer Dall
2015-05-13 11:31 ` [RFC/RFT PATCH v2 3/3] arm/arm64: KVM: implement 'uncached' mem coherency Andrew Jones
2015-05-13 11:31   ` [Qemu-devel] " Andrew Jones
2015-05-14 10:55   ` Christoffer Dall
2015-05-14 10:55     ` [Qemu-devel] " Christoffer Dall
2015-05-14 13:32     ` Andrew Jones
2015-05-14 13:32       ` Andrew Jones
2015-05-15 15:02       ` Christoffer Dall
2015-05-15 15:02         ` Christoffer Dall
2015-05-15 17:04         ` Andrew Jones
2015-05-15 17:04           ` Andrew Jones
2015-05-15 20:16           ` Jérémy Fanguède
2015-05-15 20:16             ` Jérémy Fanguède
2015-05-21  2:29           ` Mario Smarduch
2015-05-21  2:29             ` Mario Smarduch
2015-05-21 16:50             ` Andrew Jones
2015-05-21 16:50               ` Andrew Jones
2015-05-14 10:30 ` [RFC/RFT PATCH v2 0/3] KVM: Introduce KVM_MEM_UNCACHED Christoffer Dall
2015-05-14 10:30   ` [Qemu-devel] " Christoffer Dall
2015-05-14 11:09   ` Laszlo Ersek
2015-05-14 11:09     ` [Qemu-devel] " Laszlo Ersek
2015-05-14 11:29     ` Christoffer Dall
2015-05-14 11:29       ` [Qemu-devel] " Christoffer Dall
2015-05-14 11:31       ` Paolo Bonzini
2015-05-14 11:31         ` [Qemu-devel] " Paolo Bonzini
2015-05-14 11:36         ` Christoffer Dall
2015-05-14 11:36           ` [Qemu-devel] " Christoffer Dall
2015-05-14 11:38           ` Paolo Bonzini
2015-05-14 11:38             ` [Qemu-devel] " Paolo Bonzini
2015-05-14 12:00             ` Christoffer Dall
2015-05-14 12:00               ` [Qemu-devel] " Christoffer Dall
2015-05-14 12:08               ` Paolo Bonzini
2015-05-14 12:08                 ` [Qemu-devel] " Paolo Bonzini
2015-05-14 12:24                 ` Christoffer Dall [this message]
2015-05-14 12:24                   ` Christoffer Dall
2015-05-14 12:28                   ` Paolo Bonzini
2015-05-14 12:28                     ` [Qemu-devel] " Paolo Bonzini
2015-05-14 12:34                     ` Christoffer Dall
2015-05-14 12:34                       ` [Qemu-devel] " Christoffer Dall
2015-05-14 13:01                       ` Laszlo Ersek
2015-05-14 13:01                         ` [Qemu-devel] " Laszlo Ersek
2015-05-14 12:38                     ` Peter Maydell
2015-05-14 12:38                       ` [Qemu-devel] " Peter Maydell
2015-05-14 13:00                       ` Andrew Jones
2015-05-14 13:00                         ` Andrew Jones
2015-05-14 13:32                         ` Laszlo Ersek
2015-05-14 13:32                           ` Laszlo Ersek
2015-05-14 13:48                           ` Michael S. Tsirkin
2015-05-14 13:48                             ` Michael S. Tsirkin
2015-05-14 14:19                             ` Laszlo Ersek
2015-05-14 14:19                               ` Laszlo Ersek
2015-05-14 14:41                               ` Michael S. Tsirkin
2015-05-14 14:41                                 ` Michael S. Tsirkin
2015-05-15  9:00                                 ` Ard Biesheuvel
2015-05-15  9:00                                   ` Ard Biesheuvel
2015-05-14 10:31 ` Andrew Jones
2015-05-14 10:31   ` [Qemu-devel] " Andrew Jones
2015-05-14 10:37   ` Peter Maydell
2015-05-14 10:37     ` [Qemu-devel] " Peter Maydell
2015-05-14 13:03     ` Andrew Jones
2015-05-14 13:03       ` [Qemu-devel] " Andrew Jones
2015-05-14 13:11       ` Peter Maydell
2015-05-14 13:11         ` [Qemu-devel] " Peter Maydell
2015-05-14 13:33         ` Laszlo Ersek
2015-05-14 13:33           ` [Qemu-devel] " Laszlo Ersek
2015-05-14 13:36         ` Andrew Jones
2015-05-14 13:36           ` Andrew Jones
2015-05-15 15:09           ` Christoffer Dall
2015-05-15 15:09             ` Christoffer Dall

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=20150514122413.GV32765@cbox \
    --to=christoffer.dall@linaro.org \
    --cc=ard.biesheuvel@linaro.org \
    --cc=catalin.marinas@arm.com \
    --cc=kvmarm@lists.cs.columbia.edu \
    --cc=lersek@redhat.com \
    --cc=marc.zyngier@arm.com \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.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 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.