[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4AFB8C21.6080404@jp.fujitsu.com>
Date: Thu, 12 Nov 2009 13:16:33 +0900
From: Hidetoshi Seto <seto.hidetoshi@...fujitsu.com>
To: Américo Wang <xiyou.wangcong@...il.com>
CC: Stanislaw Gruszka <sgruszka@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Spencer Candland <spencer@...ehost.com>,
linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...e.hu>,
Oleg Nesterov <oleg@...hat.com>
Subject: Re: [PATCH] fix granularity of task_u/stime()
Américo Wang wrote:
>>>> kernel/built-in.o: In function `task_utime':
>>>> /usr/src/rhel5/linux-2.6/kernel/sched.c:5187: undefined reference to
>>>> `__udivdi3'
>>>> kernel/built-in.o: In function `task_stime':
>>>> /usr/src/rhel5/linux-2.6/kernel/sched.c:5208: undefined reference to
>>>> `__udivdi3'
>>>> make: *** [.tmp_vmlinux1] Error 1
>> Oh, I found I can hit this error on x86_32 (but not on x86_64).
>> Maybe something on dividing u64...
>>
>> I'll try to find fix/workaround for this, but would appreciate if someone
>> could tell me what is happening here.
>
> Yeah, this is because on 32-bit gcc tries to use libgcc to do 64-bit
> integer computing. You can insert inline asm to force gcc not to
> optimize this code. ;)
Thank you for the information.
According to the following commit which I found that is against "__udivdi3"
error, use of div_u64() will fix this problem, right?
commit 956dba3caaf66b84fe5f6180e0e4dd03902c7980
Author: Andy Whitcroft <apw@...onical.com>
Date: Wed Jul 1 15:20:59 2009 +0100
I'm now testing modified patch...
Thanks,
H.Seto
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists