lkml.org 
[lkml]   [2009]   [Jun]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [2.6.30-rc8] gcc 3.3 : __udivdi3 undefined.
On Fri, 5 Jun 2009 11:37:25 +0200 Andreas Herrmann <andreas.herrmann3@amd.com> wrote:

> On Fri, Jun 05, 2009 at 12:03:10AM -0700, Andrew Morton wrote:
> > On Fri, 05 Jun 2009 15:51:07 +0900 Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp> wrote:
> >
> > > >but I wonder why all those things are u64. They all hold virtual
> > > >addresses, don't they? The code doesn't test highmem. So shouldn't
> > > >these all be unsigned longs?
> > > memtest() in linux-2.6.29.4/arch/x86/mm/memtest.c is using "unsigned long".
> > > 2.6.30 changed to use "u64" by some reason.
> >
> > No reason, really. "consistency".
>
> Yes, it was done that way for consistency.
> See this thread
> http://lkml.org/lkml/2009/2/13/166
>
> > It made the code slower,
>
> not measurable
>
> > larger
>
> slightly on 32-bit
>
> > and, err, not compile.
>
> Mea culpa.
>
> Overlooked the 64-bit division.
> Did test this with 4.[23].x compilers on 32-bit which didn't complain ...
>
> I assume you are going to send your do_div() fix upstream?
>

I deleted it, for it is lame.

A better fix is to use the correct types.


\
 
 \ /
  Last update: 2009-06-05 19:27    [from the cache]
©2003-2011 Jasper Spaans