From: Ingo Molnar <mingo@elte.hu>
To: Adrian Bunk <bunk@stusta.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
linux-kernel@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
Thomas Gleixner <tglx@linutronix.de>,
"H. Peter Anvin" <hpa@zytor.com>,
Jeremy Fitzhardinge <jeremy@goop.org>
Subject: Re: [git pull] x86 arch updates for v2.6.25
Date: Thu, 31 Jan 2008 17:46:53 +0100 [thread overview]
Message-ID: <20080131164653.GA24494@elte.hu> (raw)
In-Reply-To: <20080131162423.GD19700@cs181133002.pp.htv.fi>
* Adrian Bunk <bunk@stusta.de> wrote:
> > > What about the breakages caused by commit
> > > a5a19c63f4e55e32dc0bc3d936d7f94793d8b380 (this commit broke the
> > > defconfig compilation on at least avr32, blackfin, sh, sparc and uml)?
> >
> > the patch below fixes that.
>
> Is it safe, or why did Jeremy state in the commit
> "I removed this include to avoid an include cycle"?
that is an x86.git complication alone, and only affects 32-bit PAE: it
is solved by the uninlining patch (that i've queued up to before the
asm-generic/tlb.h revert/fix).
Ingo
------------->
Subject: x86: uninline __pte_free_tlb() and __pmd_free_tlb()
From: Ingo Molnar <mingo@elte.hu>
this also removes an include file dependency.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
arch/x86/mm/pgtable_32.c | 19 +++++++++++++++++++
include/asm-x86/pgalloc_32.h | 19 ++-----------------
2 files changed, 21 insertions(+), 17 deletions(-)
Index: linux/arch/x86/mm/pgtable_32.c
===================================================================
--- linux.orig/arch/x86/mm/pgtable_32.c
+++ linux/arch/x86/mm/pgtable_32.c
@@ -376,3 +376,22 @@ void check_pgt_cache(void)
{
quicklist_trim(0, pgd_dtor, 25, 16);
}
+
+void __pte_free_tlb(struct mmu_gather *tlb, struct page *pte)
+{
+ paravirt_release_pt(page_to_pfn(pte));
+ tlb_remove_page(tlb, pte);
+}
+
+void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd)
+{
+ /* This is called just after the pmd has been detached from
+ the pgd, which requires a full tlb flush to be recognized
+ by the CPU. Rather than incurring multiple tlb flushes
+ while the address space is being pulled down, make the tlb
+ gathering machinery do a full flush when we're done. */
+ tlb->fullmm = 1;
+
+ paravirt_release_pd(__pa(pmd) >> PAGE_SHIFT);
+ tlb_remove_page(tlb, virt_to_page(pmd));
+}
Index: linux/include/asm-x86/pgalloc_32.h
===================================================================
--- linux.orig/include/asm-x86/pgalloc_32.h
+++ linux/include/asm-x86/pgalloc_32.h
@@ -51,11 +51,7 @@ static inline void pte_free(struct page
}
-static inline void __pte_free_tlb(struct mmu_gather *tlb, struct page *pte)
-{
- paravirt_release_pt(page_to_pfn(pte));
- tlb_remove_page(tlb, pte);
-}
+extern void __pte_free_tlb(struct mmu_gather *tlb, struct page *pte);
#ifdef CONFIG_X86_PAE
/*
@@ -72,18 +68,7 @@ static inline void pmd_free(pmd_t *pmd)
free_page((unsigned long)pmd);
}
-static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd)
-{
- /* This is called just after the pmd has been detached from
- the pgd, which requires a full tlb flush to be recognized
- by the CPU. Rather than incurring multiple tlb flushes
- while the address space is being pulled down, make the tlb
- gathering machinery do a full flush when we're done. */
- tlb->fullmm = 1;
-
- paravirt_release_pd(__pa(pmd) >> PAGE_SHIFT);
- tlb_remove_page(tlb, virt_to_page(pmd));
-}
+extern void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd);
static inline void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd)
{
next prev parent reply other threads:[~2008-01-31 16:47 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-01-30 1:15 [git pull] x86 arch updates for v2.6.25 Ingo Molnar
2008-01-31 0:33 ` x86 arch updates also broke s390 Adrian Bunk
2008-01-31 9:34 ` Martin Schwidefsky
2008-01-31 10:24 ` Ingo Molnar
2008-01-31 12:37 ` Nick Piggin
2008-02-01 9:48 ` Ingo Molnar
2008-02-01 9:52 ` Ingo Molnar
2008-02-01 9:54 ` Martin Schwidefsky
2008-02-01 10:02 ` Ingo Molnar
2008-01-31 15:57 ` [git pull] x86 arch updates for v2.6.25 Adrian Bunk
2008-01-31 16:00 ` Ingo Molnar
2008-01-31 16:04 ` Ingo Molnar
2008-01-31 16:12 ` Adrian Bunk
2008-01-31 16:15 ` Ingo Molnar
2008-01-31 16:21 ` WANG Cong
2008-01-31 16:24 ` Adrian Bunk
2008-01-31 16:46 ` Ingo Molnar [this message]
2008-01-31 16:52 ` Jeremy Fitzhardinge
2008-01-31 16:29 ` sparc compile error caused by x86 arch updates Adrian Bunk
2008-01-31 16:50 ` Jeremy Fitzhardinge
2008-01-31 17:43 ` Ingo Molnar
2008-01-31 17:55 ` Jeremy Fitzhardinge
2008-01-31 18:21 ` Adrian Bunk
2008-01-31 18:38 ` Ingo Molnar
2008-02-05 2:36 ` [git pull] x86 arch updates for v2.6.25 Maxim Levitsky
2008-02-05 3:27 ` Linus Torvalds
2008-02-05 4:11 ` Phil Oester
2008-02-05 4:54 ` Andrew Morton
2008-02-06 12:08 ` Jan Kiszka
2008-02-07 20:00 ` Daniel Phillips
2008-02-08 4:48 ` Christoph Hellwig
2008-02-08 9:51 ` Jan Kiszka
2008-02-05 17:45 ` John Stoffel
2008-02-05 17:52 ` H. Peter Anvin
2008-02-08 18:24 ` Bernhard Kaindl
2008-02-08 19:38 ` remote DMA via FireWire (was Re: [git pull] x86 arch updates for v2.6.25) Stefan Richter
2008-02-07 19:20 ` [git pull] x86 arch updates for v2.6.25 Daniel Phillips
2008-02-08 17:00 ` Andi Kleen
2008-02-08 17:48 ` Jan Kiszka
2008-02-08 18:57 ` Andi Kleen
2008-02-08 21:28 ` [RFC][PATCH] KGDB: remove kgdb-own fault handling (was: Re: [git pull] x86 arch updates for v2.6.25) Jan Kiszka
2008-02-08 21:58 ` Linus Torvalds
2008-02-08 22:16 ` [RFC][PATCH] KGDB: remove kgdb-own fault handling Jason Wessel
2008-02-09 14:11 ` [git pull] x86 arch updates for v2.6.25 Amit Shah
2008-02-10 12:30 ` Jiri Kosina
2008-02-12 7:16 ` Amit Shah
2008-02-13 8:56 ` Ingo Molnar
2008-02-13 10:19 ` Amit Shah
-- strict thread matches above, loose matches on Subject: below --
2008-02-06 2:28 David Cullen
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=20080131164653.GA24494@elte.hu \
--to=mingo@elte.hu \
--cc=akpm@linux-foundation.org \
--cc=bunk@stusta.de \
--cc=hpa@zytor.com \
--cc=jeremy@goop.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=torvalds@linux-foundation.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