* linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist\' @ 2009-03-25 3:24 Tetsuo Handa 2009-03-25 4:58 ` Wang Chen 0 siblings, 1 reply; 6+ messages in thread From: Tetsuo Handa @ 2009-03-25 3:24 UTC (permalink / raw) To: wangchen, mingo; +Cc: linux-kernel Hello. I encountered below error. arch/x86/mm/built-in.o(.init.text+0x1831): In function `early_ioremap_init': : undefined reference to `__this_fixmap_does_not_exist' make: *** [.tmp_vmlinux1] Error 1 Config is at http://I-love.SAKURA.ne.jp/tmp/config-2.6.29-next-20090324 Regards. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist\' 2009-03-25 3:24 linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist\' Tetsuo Handa @ 2009-03-25 4:58 ` Wang Chen 2009-03-25 8:52 ` Wang Chen 0 siblings, 1 reply; 6+ messages in thread From: Wang Chen @ 2009-03-25 4:58 UTC (permalink / raw) To: Tetsuo Handa; +Cc: mingo, linux-kernel Tetsuo Handa said the following on 2009-3-25 11:24: > Hello. > > I encountered below error. > > arch/x86/mm/built-in.o(.init.text+0x1831): In function `early_ioremap_init': > : undefined reference to `__this_fixmap_does_not_exist' > make: *** [.tmp_vmlinux1] Error 1 > > Config is at http://I-love.SAKURA.ne.jp/tmp/config-2.6.29-next-20090324 > Tetsuo, I've tried the latest tip, it's OK. I can't trigger the same problem as you do. So I will try linux-next later. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist\' 2009-03-25 4:58 ` Wang Chen @ 2009-03-25 8:52 ` Wang Chen 2009-03-25 9:56 ` Wang Chen 0 siblings, 1 reply; 6+ messages in thread From: Wang Chen @ 2009-03-25 8:52 UTC (permalink / raw) To: Tetsuo Handa; +Cc: mingo, linux-kernel Wang Chen said the following on 2009-3-25 12:58: > Tetsuo Handa said the following on 2009-3-25 11:24: >> Hello. >> >> I encountered below error. >> >> arch/x86/mm/built-in.o(.init.text+0x1831): In function `early_ioremap_init': >> : undefined reference to `__this_fixmap_does_not_exist' >> make: *** [.tmp_vmlinux1] Error 1 >> >> Config is at http://I-love.SAKURA.ne.jp/tmp/config-2.6.29-next-20090324 >> > > Tetsuo, I've tried the latest tip, it's OK. > I can't trigger the same problem as you do. > So I will try linux-next later. > Tetsuo I've "make" tested linux-next-20090324 with your config. Still can't trigger the error. It's strange :( ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist\' 2009-03-25 8:52 ` Wang Chen @ 2009-03-25 9:56 ` Wang Chen 2009-03-25 11:40 ` linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist' Tetsuo Handa 2009-03-25 13:09 ` [tip:x86/mm] x86: early_ioremap_init(), use __fix_to_virt(), because we are sure it's safe Wang Chen 0 siblings, 2 replies; 6+ messages in thread From: Wang Chen @ 2009-03-25 9:56 UTC (permalink / raw) To: Tetsuo Handa; +Cc: mingo, linux-kernel, sfr Wang Chen said the following on 2009-3-25 16:52: > Wang Chen said the following on 2009-3-25 12:58: >> Tetsuo Handa said the following on 2009-3-25 11:24: >>> Hello. >>> >>> I encountered below error. >>> >>> arch/x86/mm/built-in.o(.init.text+0x1831): In function `early_ioremap_init': >>> : undefined reference to `__this_fixmap_does_not_exist' >>> make: *** [.tmp_vmlinux1] Error 1 >>> >>> Config is at http://I-love.SAKURA.ne.jp/tmp/config-2.6.29-next-20090324 >>> >> Tetsuo, I've tried the latest tip, it's OK. >> I can't trigger the same problem as you do. >> So I will try linux-next later. >> > > Tetsuo > > I've "make" tested linux-next-20090324 with your config. > Still can't trigger the error. > It's strange :( > Maybe we use different gcc versions. Please try following patch. From: Wang Chen <wangchen@cn.fujitsu.com> Subject: [PATCH] use __fix_to_virt(), because we are sure it's safe Commit:8827247ffcc9e880cbe4705655065cf011265157 used a variable(which would be optimized to constant) as fix_to_virt()'s parameter. It's depended on gcc's optimization and maybe failed on old gcc. We can use __fix_to_vir() insteadly, because we know it's safe and don't need link time error reporting. Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> --- ioremap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- arch/x86/mm/ioremap.c.orig 2009-03-25 17:36:01.000000000 +0800 +++ arch/x86/mm/ioremap.c 2009-03-25 17:36:54.000000000 +0800 @@ -523,7 +523,7 @@ void __init early_ioremap_init(void) printk(KERN_INFO "early_ioremap_init()\n"); for (i = 0; i < FIX_BTMAPS_SLOTS; i++) - slot_virt[i] = fix_to_virt(FIX_BTMAP_BEGIN - NR_FIX_BTMAPS*i); + slot_virt[i] = __fix_to_virt(FIX_BTMAP_BEGIN - NR_FIX_BTMAPS*i); pmd = early_ioremap_pmd(fix_to_virt(FIX_BTMAP_BEGIN)); if (sizeof(bm_pte)) { ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist' 2009-03-25 9:56 ` Wang Chen @ 2009-03-25 11:40 ` Tetsuo Handa 2009-03-25 13:09 ` [tip:x86/mm] x86: early_ioremap_init(), use __fix_to_virt(), because we are sure it's safe Wang Chen 1 sibling, 0 replies; 6+ messages in thread From: Tetsuo Handa @ 2009-03-25 11:40 UTC (permalink / raw) To: wangchen; +Cc: mingo, linux-kernel, sfr Hello. Wang Chen wrote: > Maybe we use different gcc versions. Yes. I'm using gcc 3.3 . # gcc --version gcc (GCC) 3.3.5 (Debian 1:3.3.5-13) Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # make -sj2 arch/x86/mm/built-in.o(.init.text+0x1831): In function `early_ioremap_init': : undefined reference to `__this_fixmap_does_not_exist' make: *** [.tmp_vmlinux1] Error 1 > Please try following patch. After applying that patch, this problem was solved. Thank you. ^ permalink raw reply [flat|nested] 6+ messages in thread
* [tip:x86/mm] x86: early_ioremap_init(), use __fix_to_virt(), because we are sure it's safe 2009-03-25 9:56 ` Wang Chen 2009-03-25 11:40 ` linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist' Tetsuo Handa @ 2009-03-25 13:09 ` Wang Chen 1 sibling, 0 replies; 6+ messages in thread From: Wang Chen @ 2009-03-25 13:09 UTC (permalink / raw) To: linux-tip-commits Cc: linux-kernel, hpa, mingo, tglx, wangchen, mingo, penguin-kernel Commit-ID: 9f4f25c86ff2233dd98d4bd6968afb1ca66558a0 Gitweb: http://git.kernel.org/tip/9f4f25c86ff2233dd98d4bd6968afb1ca66558a0 Author: Wang Chen <wangchen@cn.fujitsu.com> AuthorDate: Wed, 25 Mar 2009 14:07:11 +0100 Committer: Ingo Molnar <mingo@elte.hu> CommitDate: Wed, 25 Mar 2009 14:07:11 +0100 x86: early_ioremap_init(), use __fix_to_virt(), because we are sure it's safe Tetsuo Handa reported this link bug: | arch/x86/mm/built-in.o(.init.text+0x1831): In function `early_ioremap_init': | : undefined reference to `__this_fixmap_does_not_exist' | make: *** [.tmp_vmlinux1] Error 1 Commit:8827247ffcc9e880cbe4705655065cf011265157 used a variable (which would be optimized to constant) as fix_to_virt()'s parameter. It's depended on gcc's optimization and fails on old gcc. (Tetsuo used gcc 3.3) We can use __fix_to_vir() instead, because we know it's safe and don't need link time error reporting. Reported-by: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com> Cc: sfr@canb.auug.org.au LKML-Reference: <49C9FFEA.7060908@cn.fujitsu.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> --- arch/x86/mm/ioremap.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c index 83ed74a..0dfa09d 100644 --- a/arch/x86/mm/ioremap.c +++ b/arch/x86/mm/ioremap.c @@ -516,7 +516,7 @@ void __init early_ioremap_init(void) printk(KERN_INFO "early_ioremap_init()\n"); for (i = 0; i < FIX_BTMAPS_SLOTS; i++) - slot_virt[i] = fix_to_virt(FIX_BTMAP_BEGIN - NR_FIX_BTMAPS*i); + slot_virt[i] = __fix_to_virt(FIX_BTMAP_BEGIN - NR_FIX_BTMAPS*i); pmd = early_ioremap_pmd(fix_to_virt(FIX_BTMAP_BEGIN)); memset(bm_pte, 0, sizeof(bm_pte)); ^ permalink raw reply related [flat|nested] 6+ messages in thread
end of thread, other threads:[~2009-03-25 13:10 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-03-25 3:24 linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist\' Tetsuo Handa 2009-03-25 4:58 ` Wang Chen 2009-03-25 8:52 ` Wang Chen 2009-03-25 9:56 ` Wang Chen 2009-03-25 11:40 ` linux-next-20090324: undefined reference to `__this_fixmap_does_not_exist' Tetsuo Handa 2009-03-25 13:09 ` [tip:x86/mm] x86: early_ioremap_init(), use __fix_to_virt(), because we are sure it's safe Wang Chen
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.