[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180510122912.mqmpy4j4dj2trb5r@intel.com>
Date: Thu, 10 May 2018 20:29:12 +0800
From: "Du, Changbin" <changbin.du@...el.com>
To: Steven Rostedt <rostedt@...dmis.org>
Cc: changbin.du@...el.com, yamada.masahiro@...ionext.com,
michal.lkml@...kovi.net, tglx@...utronix.de, mingo@...hat.com,
akpm@...ux-foundation.org, rdunlap@...radead.org, x86@...nel.org,
lgirdwood@...il.com, broonie@...nel.org, arnd@...db.de,
linux-kbuild@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-arch@...r.kernel.org
Subject: Re: [PATCH v4 4/4] asm-generic: fix build error in fix_to_virt with
CONFIG_CC_OPTIMIZE_FOR_DEBUGGING
On Wed, May 09, 2018 at 08:52:24AM -0400, Steven Rostedt wrote:
> On Wed, 9 May 2018 16:43:16 +0800
> changbin.du@...el.com wrote:
>
> > From: Changbin Du <changbin.du@...el.com>
> >
> > With '-Og' optimization level, GCC would not optimize a count for a loop
> > as a constant value. But BUILD_BUG_ON() only accept compile-time constant
> > values. Let's use __fix_to_virt() to avoid the error.
> >
> > arch/arm/mm/mmu.o: In function `fix_to_virt':
> > /home/changbin/work/linux/./include/asm-generic/fixmap.h:31: undefined reference to `__compiletime_assert_31'
> > Makefile:1051: recipe for target 'vmlinux' failed
> > make: *** [vmlinux] Error 1
>
> Perhaps we should put this patch ahead of patch 3. Why allow it to
> break?
>
Agree, let me exchange the last two patches.
> Anyway, besides that, I think the series looks good.
>
> For the series: Acked-by: Steven Rostedt (VMware) <rostedt@...dmis.org>
>
> -- Steve
>
>
> >
> > Signed-off-by: Changbin Du <changbin.du@...el.com>
> >
> > ---
> > v2: use __fix_to_virt() to fix the issue.
> > ---
> > arch/arm/mm/mmu.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/arm/mm/mmu.c b/arch/arm/mm/mmu.c
> > index e46a6a4..c08d74e 100644
> > --- a/arch/arm/mm/mmu.c
> > +++ b/arch/arm/mm/mmu.c
> > @@ -1599,7 +1599,7 @@ static void __init early_fixmap_shutdown(void)
> > pte_t *pte;
> > struct map_desc map;
> >
> > - map.virtual = fix_to_virt(i);
> > + map.virtual = __fix_to_virt(i);
> > pte = pte_offset_early_fixmap(pmd_off_k(map.virtual), map.virtual);
> >
> > /* Only i/o device mappings are supported ATM */
>
--
Thanks,
Changbin Du
Powered by blists - more mailing lists