All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Graf <agraf@suse.de>
To: kvm-ppc@vger.kernel.org
Cc: "kvm@vger.kernel.org mailing list" <kvm@vger.kernel.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Gleb Natapov <gleb@redhat.com>,
	Bharat Bhushan <Bharat.Bhushan@freescale.com>,
	Bharat Bhushan <bharat.bhushan@freescale.com>
Subject: [PATCH 01/42] KVM: PPC: cache flush for kernel managed pages
Date: Fri, 26 Apr 2013 20:29:56 +0200	[thread overview]
Message-ID: <1367001037-10394-23-git-send-email-agraf@suse.de> (raw)
In-Reply-To: <1367001037-10394-1-git-send-email-agraf@suse.de>

From: Bharat Bhushan <Bharat.Bhushan@freescale.com>

Kernel can only access pages which maps as memory.
So flush only the valid kernel pages.

Signed-off-by: Bharat Bhushan <bharat.bhushan@freescale.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
---
 arch/powerpc/include/asm/kvm_ppc.h |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/arch/powerpc/include/asm/kvm_ppc.h b/arch/powerpc/include/asm/kvm_ppc.h
index f589307..4794de6 100644
--- a/arch/powerpc/include/asm/kvm_ppc.h
+++ b/arch/powerpc/include/asm/kvm_ppc.h
@@ -282,8 +282,15 @@ void kvmppc_init_lpid(unsigned long nr_lpids);
 
 static inline void kvmppc_mmu_flush_icache(pfn_t pfn)
 {
-	/* Clear i-cache for new pages */
 	struct page *page;
+	/*
+	 * We can only access pages that the kernel maps
+	 * as memory. Bail out for unmapped ones.
+	 */
+	if (!pfn_valid(pfn))
+		return;
+
+	/* Clear i-cache for new pages */
 	page = pfn_to_page(pfn);
 	if (!test_bit(PG_arch_1, &page->flags)) {
 		flush_dcache_icache_page(page);
-- 
1.6.0.2


WARNING: multiple messages have this Message-ID (diff)
From: Alexander Graf <agraf@suse.de>
To: kvm-ppc@vger.kernel.org
Cc: "kvm@vger.kernel.org mailing list" <kvm@vger.kernel.org>,
	Marcelo Tosatti <mtosatti@redhat.com>,
	Gleb Natapov <gleb@redhat.com>,
	Bharat Bhushan <Bharat.Bhushan@freescale.com>,
	Bharat Bhushan <bharat.bhushan@freescale.com>
Subject: [PATCH 01/42] KVM: PPC: cache flush for kernel managed pages
Date: Fri, 26 Apr 2013 18:29:56 +0000	[thread overview]
Message-ID: <1367001037-10394-23-git-send-email-agraf@suse.de> (raw)
In-Reply-To: <1367001037-10394-1-git-send-email-agraf@suse.de>

From: Bharat Bhushan <Bharat.Bhushan@freescale.com>

Kernel can only access pages which maps as memory.
So flush only the valid kernel pages.

Signed-off-by: Bharat Bhushan <bharat.bhushan@freescale.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
---
 arch/powerpc/include/asm/kvm_ppc.h |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/arch/powerpc/include/asm/kvm_ppc.h b/arch/powerpc/include/asm/kvm_ppc.h
index f589307..4794de6 100644
--- a/arch/powerpc/include/asm/kvm_ppc.h
+++ b/arch/powerpc/include/asm/kvm_ppc.h
@@ -282,8 +282,15 @@ void kvmppc_init_lpid(unsigned long nr_lpids);
 
 static inline void kvmppc_mmu_flush_icache(pfn_t pfn)
 {
-	/* Clear i-cache for new pages */
 	struct page *page;
+	/*
+	 * We can only access pages that the kernel maps
+	 * as memory. Bail out for unmapped ones.
+	 */
+	if (!pfn_valid(pfn))
+		return;
+
+	/* Clear i-cache for new pages */
 	page = pfn_to_page(pfn);
 	if (!test_bit(PG_arch_1, &page->flags)) {
 		flush_dcache_icache_page(page);
-- 
1.6.0.2


  parent reply	other threads:[~2013-04-26 18:30 UTC|newest]

Thread overview: 180+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-26 18:29 [PATCH 00/20] KVM: PPC: In-kernel MPIC support with irqfd v4 Alexander Graf
2013-04-26 18:29 ` Alexander Graf
2013-04-26 18:29 ` [PATCH 01/20] KVM: Add KVM_IRQCHIP_NUM_PINS in addition to KVM_IOAPIC_NUM_PINS Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 02/20] KVM: Introduce CONFIG_HAVE_KVM_IRQ_ROUTING Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 03/20] KVM: Drop __KVM_HAVE_IOAPIC condition on irq routing Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 04/20] KVM: Remove kvm_get_intr_delivery_bitmask Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 05/20] KVM: Move irq routing to generic code Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 06/20] KVM: Extract generic irqchip logic into irqchip.c Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 07/20] KVM: Move irq routing setup to irqchip.c Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 08/20] KVM: Move irqfd resample cap handling to generic code Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 09/20] kvm: add device control API Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 10/20] kvm/ppc/mpic: import hw/openpic.c from QEMU Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 11/20] kvm/ppc/mpic: remove some obviously unneeded code Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 12/20] kvm/ppc/mpic: adapt to kernel style and environment Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 13/20] kvm/ppc/mpic: in-kernel MPIC emulation Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 14/20] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 15/20] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 16/20] KVM: PPC: MPIC: Add support for KVM_IRQ_LINE Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 17/20] KVM: PPC: MPIC: Restrict to e500 platforms Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 18/20] KVM: IA64: Carry non-ia64 changes into ia64 Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 19/20] kvm: destroy emulated devices on VM exit Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 20/20] kvm/ppc/mpic: Eliminate mmio_mapped Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PULL 00/42] ppc patch queue 2013-04-26 for 3.10 Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-28 10:05   ` Gleb Natapov
2013-04-28 10:05     ` Gleb Natapov
2013-04-26 18:29 ` Alexander Graf [this message]
2013-04-26 18:29   ` [PATCH 01/42] KVM: PPC: cache flush for kernel managed pages Alexander Graf
2013-04-26 18:29 ` [PATCH 02/42] KVM: PPC: debug stub interface parameter defined Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 03/42] Rename EMULATE_DO_PAPR to EMULATE_EXIT_USER Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:29 ` [PATCH 04/42] KVM: extend EMULATE_EXIT_USER to support different exit reasons Alexander Graf
2013-04-26 18:29   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 05/42] booke: exit to user space if emulator request Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 06/42] KVM: PPC: Book3E: Refactor ONE_REG ioctl implementation Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 07/42] KVM: PPC: e500: Expose MMU registers via ONE_REG Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 08/42] KVM: PPC: e500: Move vcpu's MMU configuration to dedicated functions Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 09/42] KVM: PPC: e500: Add support for TLBnPS registers Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 10/42] KVM: PPC: e500: Add support for EPTCFG register Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 11/42] KVM: PPC: e500: Remove E.PT and E.HV.LRAT categories from VCPUs Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 12/42] KVM: PPC: e500mc: Enable e6500 cores Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 13/42] KVM: PPC: e500: Add e6500 core to Kconfig description Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 14/42] KVM: PPC: Book3S HV: Make HPT reading code notice R/C bit changes Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 15/42] KVM: PPC: Book3S HV: Report VPA and DTL modifications in dirty map Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 16/42] KVM: Add KVM_IRQCHIP_NUM_PINS in addition to KVM_IOAPIC_NUM_PINS Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-28  5:41   ` Gleb Natapov
2013-04-28  5:41     ` Gleb Natapov
2013-04-28  9:46     ` Alexander Graf
2013-04-28  9:46       ` Alexander Graf
2013-04-26 18:30 ` [PATCH 17/42] KVM: Introduce CONFIG_HAVE_KVM_IRQ_ROUTING Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 18/42] KVM: Drop __KVM_HAVE_IOAPIC condition on irq routing Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 19/42] KVM: Remove kvm_get_intr_delivery_bitmask Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 20/42] KVM: Move irq routing to generic code Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 21/42] KVM: Extract generic irqchip logic into irqchip.c Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 22/42] KVM: Move irq routing setup to irqchip.c Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 23/42] KVM: Move irqfd resample cap handling to generic code Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 24/42] kvm: add device control API Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 25/42] kvm/ppc/mpic: import hw/openpic.c from QEMU Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 26/42] kvm/ppc/mpic: remove some obviously unneeded code Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 27/42] kvm/ppc/mpic: adapt to kernel style and environment Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 28/42] kvm/ppc/mpic: in-kernel MPIC emulation Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 29/42] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 30/42] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 31/42] KVM: PPC: MPIC: Add support for KVM_IRQ_LINE Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 32/42] KVM: PPC: MPIC: Restrict to e500 platforms Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 33/42] KVM: IA64: Carry non-ia64 changes into ia64 Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 34/42] kvm: destroy emulated devices on VM exit Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-28  5:43   ` Gleb Natapov
2013-04-28  5:43     ` Gleb Natapov
2013-04-28  9:47     ` Alexander Graf
2013-04-28  9:47       ` Alexander Graf
2013-04-26 18:30 ` [PATCH 35/42] kvm/ppc/mpic: Eliminate mmio_mapped Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 36/42] KVM: PPC: Book3S: Add infrastructure to implement kernel-side RTAS calls Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 37/42] KVM: PPC: Book3S: Add kernel emulation for the XICS interrupt controller Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 38/42] KVM: PPC: Book3S HV: Speed up wakeups of CPUs on HV KVM Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 39/42] KVM: PPC: Book3S HV: Add support for real mode ICP in XICS emulation Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 40/42] KVM: PPC: Book3S HV: Improve real-mode handling of external interrupts Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 41/42] KVM: PPC: Book3S: Add support for ibm,int-on/off RTAS calls Alexander Graf
2013-04-26 18:30   ` Alexander Graf
2013-04-26 18:30 ` [PATCH 42/42] KVM: PPC: Book3S: Facilities to save/restore XICS presentation ctrler state Alexander Graf
2013-04-26 18:30   ` Alexander Graf
  -- strict thread matches above, loose matches on Subject: below --
2013-04-26  8:24 [PATCH 00/20] KVM: PPC: In-kernel MPIC support with irqfd v4 Alexander Graf
2013-04-26  8:24 ` Alexander Graf
2013-04-26  8:24 ` [PATCH 01/20] KVM: Add KVM_IRQCHIP_NUM_PINS in addition to KVM_IOAPIC_NUM_PINS Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 02/20] KVM: Introduce CONFIG_HAVE_KVM_IRQ_ROUTING Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 03/20] KVM: Drop __KVM_HAVE_IOAPIC condition on irq routing Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 04/20] KVM: Remove kvm_get_intr_delivery_bitmask Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 05/20] KVM: Move irq routing to generic code Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 06/20] KVM: Extract generic irqchip logic into irqchip.c Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 07/20] KVM: Move irq routing setup to irqchip.c Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 08/20] KVM: Move irqfd resample cap handling to generic code Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 09/20] kvm: add device control API Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 10/20] kvm/ppc/mpic: import hw/openpic.c from QEMU Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 11/20] kvm/ppc/mpic: remove some obviously unneeded code Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 12/20] kvm/ppc/mpic: adapt to kernel style and environment Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 13/20] kvm/ppc/mpic: in-kernel MPIC emulation Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 14/20] kvm/ppc/mpic: add KVM_CAP_IRQ_MPIC Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 15/20] KVM: PPC: Support irq routing and irqfd for in-kernel MPIC Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 16/20] KVM: PPC: MPIC: Add support for KVM_IRQ_LINE Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 17/20] KVM: PPC: MPIC: Restrict to e500 platforms Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 18/20] KVM: IA64: Carry non-ia64 changes into ia64 Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 19/20] kvm: destroy emulated devices on VM exit Alexander Graf
2013-04-26  8:24   ` Alexander Graf
2013-04-26  8:24 ` [PATCH 20/20] kvm/ppc/mpic: Eliminate mmio_mapped Alexander Graf
2013-04-26  8:24   ` 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=1367001037-10394-23-git-send-email-agraf@suse.de \
    --to=agraf@suse.de \
    --cc=Bharat.Bhushan@freescale.com \
    --cc=gleb@redhat.com \
    --cc=kvm-ppc@vger.kernel.org \
    --cc=kvm@vger.kernel.org \
    --cc=mtosatti@redhat.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.