From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933174AbZBNBt0 (ORCPT ); Fri, 13 Feb 2009 20:49:26 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753693AbZBNBn7 (ORCPT ); Fri, 13 Feb 2009 20:43:59 -0500 Received: from gw.goop.org ([64.81.55.164]:51050 "EHLO abulafia.goop.org" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932702AbZBNBn5 (ORCPT ); Fri, 13 Feb 2009 20:43:57 -0500 From: Jeremy Fitzhardinge To: Ingo Molnar Cc: the arch/x86 maintainers , Xen-devel , Linux Kernel Mailing List , Yinghai Lu , Ian Campbell , Jeremy Fitzhardinge , Jeremy Fitzhardinge Subject: [PATCH 3/9] xen: create dummy ioapic mapping Date: Fri, 13 Feb 2009 17:12:01 -0800 Message-Id: <79724b71f4b8ef1fb65ea246dde2e3e1344b2a43.1234573847.git.jeremy.fitzhardinge@citrix.com> X-Mailer: git-send-email 1.6.0.6 In-Reply-To: <3e46dae897fd5620f50b4cca9272969f5546aa88.1234573847.git.jeremy.fitzhardinge@citrix.com> References: <3c7db30686056c9b86cc61ef50dd5572de868512.1234573847.git.jeremy.fitzhardinge@citrix.com> <3e46dae897fd5620f50b4cca9272969f5546aa88.1234573847.git.jeremy.fitzhardinge@citrix.com> In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org We don't allow direct access to the IO apic, so make sure that any request to map it just "maps" non-present pages. We should see any attempts at direct access explode nicely. Signed-off-by: Jeremy Fitzhardinge --- arch/x86/xen/mmu.c | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/arch/x86/xen/mmu.c b/arch/x86/xen/mmu.c index e678df8..094e6b8 100644 --- a/arch/x86/xen/mmu.c +++ b/arch/x86/xen/mmu.c @@ -1844,6 +1844,16 @@ static void xen_set_fixmap(unsigned idx, unsigned long phys, pgprot_t prot) pte = pfn_pte(phys, prot); break; +#ifdef CONFIG_X86_IO_APIC + case FIX_IO_APIC_BASE_0 ... FIX_IO_APIC_BASE_END: + /* + * We just don't map the IO APIC - all access is via + * hypercalls. Keep the address in the pte for reference. + */ + pte = pfn_pte(phys, PAGE_NONE); + break; +#endif + case FIX_PARAVIRT_BOOTMAP: /* This is an MFN, but it isn't an IO mapping from the IO domain */ -- 1.6.0.6