From: Jeremy Fitzhardinge <jeremy@goop.org>
To: Ingo Molnar <mingo@elte.hu>
Cc: Adrian Bunk <bunk@stusta.de>,
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>
Subject: Re: [git pull] x86 arch updates for v2.6.25
Date: Thu, 31 Jan 2008 08:52:07 -0800 [thread overview]
Message-ID: <47A1FCB7.6010101@goop.org> (raw)
In-Reply-To: <20080131164653.GA24494@elte.hu>
Ingo Molnar wrote:
> * 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.
>
Yes, that simplifies things a lot.
J
> 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:52 UTC|newest]
Thread overview: 55+ 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
2008-01-31 16:52 ` Jeremy Fitzhardinge [this message]
2008-01-31 16:29 ` sparc compile error caused by x86 arch updates Adrian Bunk
2008-01-31 16:29 ` Adrian Bunk
2008-01-31 16:50 ` Jeremy Fitzhardinge
2008-01-31 16:50 ` Jeremy Fitzhardinge
2008-01-31 17:43 ` Ingo Molnar
2008-01-31 17:43 ` Ingo Molnar
2008-01-31 17:55 ` Jeremy Fitzhardinge
2008-01-31 17:55 ` Jeremy Fitzhardinge
2008-01-31 18:21 ` Adrian Bunk
2008-01-31 18:21 ` Adrian Bunk
2008-01-31 18:38 ` Ingo Molnar
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=47A1FCB7.6010101@goop.org \
--to=jeremy@goop.org \
--cc=akpm@linux-foundation.org \
--cc=bunk@stusta.de \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--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 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.