From patchwork Wed Jun 22 13:42:50 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stefan Bader X-Patchwork-Id: 101468 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from chlorine.canonical.com (chlorine.canonical.com [91.189.94.204]) by ozlabs.org (Postfix) with ESMTP id CFD38B7007 for ; Wed, 22 Jun 2011 23:43:00 +1000 (EST) Received: from localhost ([127.0.0.1] helo=chlorine.canonical.com) by chlorine.canonical.com with esmtp (Exim 4.71) (envelope-from ) id 1QZNho-00046r-Fn; Wed, 22 Jun 2011 13:42:56 +0000 Received: from adelie.canonical.com ([91.189.90.139]) by chlorine.canonical.com with esmtp (Exim 4.71) (envelope-from ) id 1QZNhm-00046G-Qr for kernel-team@lists.ubuntu.com; Wed, 22 Jun 2011 13:42:54 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by adelie.canonical.com with esmtp (Exim 4.71 #1 (Debian)) id 1QZNhm-0002iV-Mz for ; Wed, 22 Jun 2011 13:42:54 +0000 Received: from p5b2e55c3.dip.t-dialin.net ([91.46.85.195] helo=canonical.com) by youngberry.canonical.com with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1QZNhm-0005RJ-J2 for kernel-team@lists.ubuntu.com; Wed, 22 Jun 2011 13:42:54 +0000 From: Stefan Bader To: kernel-team@lists.ubuntu.com Subject: [PATCH 3/4] UBUNTU: xen: xen_destroy_contiguous_region only needed in unshared case Date: Wed, 22 Jun 2011 15:42:50 +0200 Message-Id: <1308750171-12578-3-git-send-email-stefan.bader@canonical.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1308750171-12578-1-git-send-email-stefan.bader@canonical.com> References: <20110622083557.GJ31152@shadowen.org> <1308750171-12578-1-git-send-email-stefan.bader@canonical.com> X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.13 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: kernel-team-bounces@lists.ubuntu.com Errors-To: kernel-team-bounces@lists.ubuntu.com The call to create is only done for !SHARED_KERNEL_PMD, so only destroy in that case (also this is only useful when CONFIG_XEN is set. BugLink: http://bugs.launchpad.net/bugs/705562 Signed-off-by: Stefan Bader --- arch/x86/mm/pgtable_32-xen.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/arch/x86/mm/pgtable_32-xen.c b/arch/x86/mm/pgtable_32-xen.c index 48242aa..49e28e7 100644 --- a/arch/x86/mm/pgtable_32-xen.c +++ b/arch/x86/mm/pgtable_32-xen.c @@ -473,8 +473,12 @@ void pgd_free(pgd_t *pgd) pmd_cache_free(pmd, i); } - if (!xen_feature(XENFEAT_pae_pgdir_above_4gb)) - xen_destroy_contiguous_region((unsigned long)pgd, 0); +#ifdef CONFIG_XEN + if (!SHARED_KERNEL_PMD) + if (!xen_feature(XENFEAT_pae_pgdir_above_4gb)) + xen_destroy_contiguous_region( + (unsigned long)pgd, 0); +#endif } /* in the non-PAE case, free_pgtables() clears user pgd entries */