From: Paul Mundt <lethal@linux-sh.org>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Nick Piggin <npiggin@suse.de>,
Linux Memory Management <linux-mm@kvack.org>,
Linux-Arch <linux-arch@vger.kernel.org>,
linux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,
Hugh Dickins <hugh@tiscali.co.uk>, ralf <ralf@linux-mips.org>
Subject: Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()
Date: Tue, 28 Jul 2009 09:25:29 +0900 [thread overview]
Message-ID: <20090728002529.GB22668@linux-sh.org> (raw)
In-Reply-To: <1248740260.30993.26.camel@pasglop>
On Tue, Jul 28, 2009 at 10:17:40AM +1000, Benjamin Herrenschmidt wrote:
> On Mon, 2009-07-27 at 12:11 -0700, Linus Torvalds wrote:
> > On Thu, 23 Jul 2009, Benjamin Herrenschmidt wrote:
> > >
> > > Hrm... my powerpc-next branch will contain stuff that depend on it, so
> > > I'll probably have to pull it in though, unless I tell all my
> > > sub-maintainers to also pull from that other branch first :-)
> >
> > Ok, I'll just apply the patch. It does look obvious enough.
>
> There seem to be a MIPS and SH breakage as a result but I can't see
> how my patch would have broken it, ie, it looks like the bug was
> already in those two archs. The error is that it complains about a
> duplicate definition of __pmd_free_tlb() between those arch pgalloc.h
> and pgtable-nopmd.h
>
> For MIPS, when CONFIG_32BIT is set, asm/pgalloc.h redefines
> __pmd_free_tlb despite the fact that it's already defined by
> asm-generic/pgtable-nopmd.h (via via pgtable.h via linux/mm.h).
>
> I -suspect- what happens is that the compiler, before, would ignore the
> double definition (or maybe just warn) due to the definition being
> strictly identical. With the new argument added, it's no longer the case
> as it's called "a" in asm-generic and "addr" in mips... oops.
>
> In any case, can Ralf and Paul check if the following patch is correct ?
>
Yup, that seems to be what happened. I've never seen a warning about this
with any compiler version, otherwise we would have caught this much
earlier. As soon as the addr -> a rename took place it blew up
immediately as a redefinition. Is there a magical gcc flag we can turn on
to warn on identical definitions, even if just for testing?
> >From 41928c7945d855ae0eb053eadad590ab6876847e Mon Sep 17 00:00:00 2001
> From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Date: Tue, 28 Jul 2009 10:16:48 +1000
> Subject: [PATCH] mm: Remove duplicate definitions in MIPS and SH
>
> Those definitions are already provided by asm-generic
>
> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Builds and boots fine, thanks.
Acked-by: Paul Mundt <lethal@linux-sh.org>
WARNING: multiple messages have this Message-ID (diff)
From: Paul Mundt <lethal@linux-sh.org>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Nick Piggin <npiggin@suse.de>,
Linux-Arch <linux-arch@vger.kernel.org>,
linuxppc-dev@ozlabs.org, Hugh Dickins <hugh@tiscali.co.uk>,
linux-kernel@vger.kernel.org, ralf <ralf@linux-mips.org>,
Linux Memory Management <linux-mm@kvack.org>,
Linus Torvalds <torvalds@linux-foundation.org>
Subject: Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb()
Date: Tue, 28 Jul 2009 09:25:29 +0900 [thread overview]
Message-ID: <20090728002529.GB22668@linux-sh.org> (raw)
In-Reply-To: <1248740260.30993.26.camel@pasglop>
On Tue, Jul 28, 2009 at 10:17:40AM +1000, Benjamin Herrenschmidt wrote:
> On Mon, 2009-07-27 at 12:11 -0700, Linus Torvalds wrote:
> > On Thu, 23 Jul 2009, Benjamin Herrenschmidt wrote:
> > >
> > > Hrm... my powerpc-next branch will contain stuff that depend on it, so
> > > I'll probably have to pull it in though, unless I tell all my
> > > sub-maintainers to also pull from that other branch first :-)
> >
> > Ok, I'll just apply the patch. It does look obvious enough.
>
> There seem to be a MIPS and SH breakage as a result but I can't see
> how my patch would have broken it, ie, it looks like the bug was
> already in those two archs. The error is that it complains about a
> duplicate definition of __pmd_free_tlb() between those arch pgalloc.h
> and pgtable-nopmd.h
>
> For MIPS, when CONFIG_32BIT is set, asm/pgalloc.h redefines
> __pmd_free_tlb despite the fact that it's already defined by
> asm-generic/pgtable-nopmd.h (via via pgtable.h via linux/mm.h).
>
> I -suspect- what happens is that the compiler, before, would ignore the
> double definition (or maybe just warn) due to the definition being
> strictly identical. With the new argument added, it's no longer the case
> as it's called "a" in asm-generic and "addr" in mips... oops.
>
> In any case, can Ralf and Paul check if the following patch is correct ?
>
Yup, that seems to be what happened. I've never seen a warning about this
with any compiler version, otherwise we would have caught this much
earlier. As soon as the addr -> a rename took place it blew up
immediately as a redefinition. Is there a magical gcc flag we can turn on
to warn on identical definitions, even if just for testing?
> >From 41928c7945d855ae0eb053eadad590ab6876847e Mon Sep 17 00:00:00 2001
> From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Date: Tue, 28 Jul 2009 10:16:48 +1000
> Subject: [PATCH] mm: Remove duplicate definitions in MIPS and SH
>
> Those definitions are already provided by asm-generic
>
> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Builds and boots fine, thanks.
Acked-by: Paul Mundt <lethal@linux-sh.org>
WARNING: multiple messages have this Message-ID (diff)
From: Paul Mundt <lethal@linux-sh.org>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
Nick Piggin <npiggin@suse.de>,
Linux Memory Management <linux-mm@kvack.org>,
Linux-Arch <linux-arch@vger.kernel.org>,
linux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,
Hugh Dickins <hugh@tiscali.co.uk>, ralf <ralf@linux-mips.org>
Subject: Re: [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb()
Date: Tue, 28 Jul 2009 09:25:29 +0900 [thread overview]
Message-ID: <20090728002529.GB22668@linux-sh.org> (raw)
In-Reply-To: <1248740260.30993.26.camel@pasglop>
On Tue, Jul 28, 2009 at 10:17:40AM +1000, Benjamin Herrenschmidt wrote:
> On Mon, 2009-07-27 at 12:11 -0700, Linus Torvalds wrote:
> > On Thu, 23 Jul 2009, Benjamin Herrenschmidt wrote:
> > >
> > > Hrm... my powerpc-next branch will contain stuff that depend on it, so
> > > I'll probably have to pull it in though, unless I tell all my
> > > sub-maintainers to also pull from that other branch first :-)
> >
> > Ok, I'll just apply the patch. It does look obvious enough.
>
> There seem to be a MIPS and SH breakage as a result but I can't see
> how my patch would have broken it, ie, it looks like the bug was
> already in those two archs. The error is that it complains about a
> duplicate definition of __pmd_free_tlb() between those arch pgalloc.h
> and pgtable-nopmd.h
>
> For MIPS, when CONFIG_32BIT is set, asm/pgalloc.h redefines
> __pmd_free_tlb despite the fact that it's already defined by
> asm-generic/pgtable-nopmd.h (via via pgtable.h via linux/mm.h).
>
> I -suspect- what happens is that the compiler, before, would ignore the
> double definition (or maybe just warn) due to the definition being
> strictly identical. With the new argument added, it's no longer the case
> as it's called "a" in asm-generic and "addr" in mips... oops.
>
> In any case, can Ralf and Paul check if the following patch is correct ?
>
Yup, that seems to be what happened. I've never seen a warning about this
with any compiler version, otherwise we would have caught this much
earlier. As soon as the addr -> a rename took place it blew up
immediately as a redefinition. Is there a magical gcc flag we can turn on
to warn on identical definitions, even if just for testing?
> >From 41928c7945d855ae0eb053eadad590ab6876847e Mon Sep 17 00:00:00 2001
> From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Date: Tue, 28 Jul 2009 10:16:48 +1000
> Subject: [PATCH] mm: Remove duplicate definitions in MIPS and SH
>
> Those definitions are already provided by asm-generic
>
> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Builds and boots fine, thanks.
Acked-by: Paul Mundt <lethal@linux-sh.org>
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2009-07-28 0:25 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-07-15 7:49 [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Benjamin Herrenschmidt
2009-07-15 7:49 ` Benjamin Herrenschmidt
2009-07-15 7:49 ` Benjamin Herrenschmidt
2009-07-15 7:49 ` Benjamin Herrenschmidt
2009-07-15 13:56 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Nick Piggin
2009-07-15 13:56 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Nick Piggin
2009-07-15 13:56 ` Nick Piggin
2009-07-16 1:54 ` Benjamin Herrenschmidt
2009-07-16 1:54 ` Benjamin Herrenschmidt
2009-07-16 1:54 ` Benjamin Herrenschmidt
2009-07-20 8:10 ` Nick Piggin
2009-07-20 8:10 ` Nick Piggin
2009-07-20 8:10 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Nick Piggin
2009-07-20 10:00 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Benjamin Herrenschmidt
2009-07-20 10:00 ` Benjamin Herrenschmidt
2009-07-20 10:00 ` Benjamin Herrenschmidt
2009-07-20 10:38 ` Nick Piggin
2009-07-20 10:38 ` Nick Piggin
2009-07-20 10:38 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Nick Piggin
2009-07-21 0:02 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Benjamin Herrenschmidt
2009-07-21 0:02 ` Benjamin Herrenschmidt
2009-07-21 0:02 ` Benjamin Herrenschmidt
2009-07-21 7:05 ` Nick Piggin
2009-07-21 7:05 ` Nick Piggin
2009-07-21 7:05 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Nick Piggin
2009-07-20 7:11 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Benjamin Herrenschmidt
2009-07-20 7:11 ` Benjamin Herrenschmidt
2009-07-20 7:11 ` Benjamin Herrenschmidt
2009-07-20 7:48 ` Martin Schwidefsky
2009-07-20 7:48 ` Martin Schwidefsky
2009-07-20 7:48 ` Martin Schwidefsky
2009-07-20 8:05 ` Nick Piggin
2009-07-20 8:05 ` Nick Piggin
2009-07-20 8:05 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Nick Piggin
2009-07-20 9:59 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Benjamin Herrenschmidt
2009-07-20 9:59 ` Benjamin Herrenschmidt
2009-07-20 9:59 ` Benjamin Herrenschmidt
2009-07-20 10:39 ` Nick Piggin
2009-07-20 10:39 ` Nick Piggin
2009-07-20 10:39 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Nick Piggin
2009-07-22 16:31 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Linus Torvalds
2009-07-22 16:31 ` Linus Torvalds
2009-07-22 16:31 ` Linus Torvalds
2009-07-23 0:53 ` Benjamin Herrenschmidt
2009-07-23 0:53 ` Benjamin Herrenschmidt
2009-07-23 0:53 ` Benjamin Herrenschmidt
2009-07-23 0:59 ` Kumar Gala
2009-07-23 0:59 ` Kumar Gala
2009-07-23 0:59 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Kumar Gala
2009-07-27 19:11 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Linus Torvalds
2009-07-27 19:11 ` Linus Torvalds
2009-07-27 19:11 ` Linus Torvalds
2009-07-27 21:35 ` Benjamin Herrenschmidt
2009-07-27 21:35 ` Benjamin Herrenschmidt
2009-07-27 21:35 ` Benjamin Herrenschmidt
2009-07-28 0:17 ` Benjamin Herrenschmidt
2009-07-28 0:17 ` Benjamin Herrenschmidt
2009-07-28 0:17 ` Benjamin Herrenschmidt
2009-07-28 0:17 ` Benjamin Herrenschmidt
2009-07-28 0:17 ` Benjamin Herrenschmidt
2009-07-28 0:25 ` Paul Mundt [this message]
2009-07-28 0:25 ` Paul Mundt
2009-07-28 0:25 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() Paul Mundt
2009-07-28 0:41 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() Linus Torvalds
2009-07-28 0:41 ` Linus Torvalds
2009-07-28 0:41 ` Linus Torvalds
2009-07-16 1:36 ` Michael Ellerman
2009-07-16 1:36 ` Michael Ellerman
2009-07-16 1:56 ` Benjamin Herrenschmidt
2009-07-16 1:56 ` Benjamin Herrenschmidt
2009-07-16 1:56 ` Benjamin Herrenschmidt
2009-07-20 12:46 ` David Howells
2009-07-20 12:46 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te, ud, md}_free_tlb() David Howells
2009-07-20 12:46 ` [RFC/PATCH] mm: Pass virtual address to [__]p{te,ud,md}_free_tlb() David Howells
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=20090728002529.GB22668@linux-sh.org \
--to=lethal@linux-sh.org \
--cc=benh@kernel.crashing.org \
--cc=hugh@tiscali.co.uk \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=npiggin@suse.de \
--cc=ralf@linux-mips.org \
--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.