* 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.