qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Alexander Graf <agraf@suse.de>
To: qemu-devel@nongnu.org
Cc: Blue Swirl <blauwirbel@gmail.com>,
	qemu-ppc@nongnu.org, David Gibson <david@gibson.dropbear.id.au>
Subject: [Qemu-devel] [PATCH 22/22] pseries: Allow writes to KVM accelerated TCE table
Date: Sun, 30 Oct 2011 21:23:13 +0100	[thread overview]
Message-ID: <1320006193-15219-23-git-send-email-agraf@suse.de> (raw)
In-Reply-To: <1320006193-15219-1-git-send-email-agraf@suse.de>

From: David Gibson <david@gibson.dropbear.id.au>

Sufficiently recent kernels include a KVM call to accelerate use of
PAPR TCE tables (IOMMU), which are used by PAPR virtual IO devices.
This involves qemu mapping the TCE table in from a kernel obtained fd,
which currently we do with PROT_READ only.  This is a hangover from
early (never released) versions of this kernel interface which only
permitted read-only mappings and required us to destroy and recreate
the table when we needed to clear it from qemu.

Now, the kernel permits read-write mappings, and we rely on this to
clear the table in spapr_vio_quiesce_one().  However, due to
insufficient testing, I forgot to update the actual mapping of the
table in kvmppc_create_spapr_tce() to add PROT_WRITE to the mmap().

This patch corrects the oversight.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Alexander Graf <agraf@suse.de>
---
 target-ppc/kvm.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/target-ppc/kvm.c b/target-ppc/kvm.c
index f3d0861..429349f 100644
--- a/target-ppc/kvm.c
+++ b/target-ppc/kvm.c
@@ -850,7 +850,7 @@ void *kvmppc_create_spapr_tce(uint32_t liobn, uint32_t window_size, int *pfd)
     len = (window_size / SPAPR_VIO_TCE_PAGE_SIZE) * sizeof(VIOsPAPR_RTCE);
     /* FIXME: round this up to page size */
 
-    table = mmap(NULL, len, PROT_READ, MAP_SHARED, fd, 0);
+    table = mmap(NULL, len, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);
     if (table == MAP_FAILED) {
         close(fd);
         return NULL;
-- 
1.6.0.2

  parent reply	other threads:[~2011-10-30 20:15 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-30 20:22 [Qemu-devel] [PULL 00/22] ppc patch queue 2011-10-30 Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 01/22] ppc/e500_pci: Fix code style Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 02/22] ppc/e500_pci: Fix an array overflow issue Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 03/22] pseries: Support SMT systems for KVM Book3S-HV Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 04/22] pseries: Allow KVM Book3S-HV on PPC970 CPUS Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 05/22] pseries: Use Book3S-HV TCE acceleration capabilities Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 06/22] pseries: Update SLOF firmware image Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 07/22] Set an invalid-bits mask for each SPE instructions Alexander Graf
2011-10-30 20:22 ` [Qemu-devel] [PATCH 08/22] ppc: Generalize the kvmppc_get_clockfreq() function Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 09/22] pseries: Add device tree properties for VMX/VSX and DFP under kvm Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 10/22] pseries: Update SLOF firmware image Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 11/22] ppc: Remove broken partial PVR matching Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 12/22] ppc: First cut implementation of -cpu host Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 13/22] ppc: Add cpu defs for POWER7 revisions 2.1 and 2.3 Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 14/22] pseries: Under kvm use guest cpu = host cpu by default Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 15/22] PPC: Bump qemu-system-ppc to 64-bit physical address space Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 16/22] PPC: Disable non-440 CPUs for ppcemb target Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 17/22] ppc: Avoid decrementer related kvm exits Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 18/22] PPC: Fail configure when libfdt is not available Alexander Graf
2011-11-01 19:28   ` Blue Swirl
2011-11-01 20:42     ` Alexander Graf
2011-11-01 23:59     ` [Qemu-devel] [Qemu-ppc] " David Gibson
2011-10-30 20:23 ` [Qemu-devel] [PATCH 19/22] pseries: Correct vmx/dfp handling in both KVM and TCG cases Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 20/22] ppc: Fix up usermode only builds Alexander Graf
2011-10-30 20:23 ` [Qemu-devel] [PATCH 21/22] KVM: PPC: Override host vmx/vsx/dfp only when information known Alexander Graf
2011-10-30 20:23 ` Alexander Graf [this message]
2011-10-31  4:03 ` [Qemu-devel] [PULL 00/22] ppc patch queue 2011-10-30 Alexander Graf
2011-10-31  4:12 ` [Qemu-devel] [PATCH 23/22] ppc: Alter CPU state to mask out TCG unimplemented instructions as appropriate Alexander Graf
2011-10-31  4:12 ` [Qemu-devel] [PATCH 24/22] pseries: Add partial support for PCI Alexander Graf
2011-11-01 21:05 ` [Qemu-devel] [PULL 00/22] ppc patch queue 2011-10-30 Blue Swirl
2011-11-01 21:41   ` Anthony Liguori
2011-11-01 22:14     ` Alexander Graf
2011-11-01 22:16       ` Anthony Liguori
2011-11-01 22:28         ` Alexander Graf
2011-11-01 22:32           ` Anthony Liguori
2011-11-02  0:12           ` [Qemu-devel] [Qemu-ppc] " David Gibson
2011-11-02 19:59     ` [Qemu-devel] " Blue Swirl
2011-11-02 20:11       ` Anthony Liguori
2011-11-02 20:38       ` Alexander Graf

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=1320006193-15219-23-git-send-email-agraf@suse.de \
    --to=agraf@suse.de \
    --cc=blauwirbel@gmail.com \
    --cc=david@gibson.dropbear.id.au \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@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 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).