On Tue, 2008-07-22 at 03:05 -0700, Andrew Morton wrote: > On Fri, 4 Jul 2008 20:03:51 -0600 Matthew Wilcox <matthew@xxxxxx> wrote: > > > [PATCH] Make u64 long long on all architectures > > > > It is currently awkward to print a u64 type. Some architectures use > > unsigned long while others use unsigned long long. Since unsigned long > > long is 64-bit for all existing Linux architectures, change those that > > use long to use long long. Note that this applies only within the > > kernel. If u64 is being used in a C++ method definition, the symbol > > mangling would change. > > > > Signed-off-by: Matthew Wilcox <willy@xxxxxxxxxxxxxxx> > > > > diff --git a/include/asm-generic/int-l64.h b/include/asm-generic/int-l64.h > > index 2af9b75..32f07bd 100644 > > --- a/include/asm-generic/int-l64.h > > +++ b/include/asm-generic/int-l64.h > > @@ -23,8 +23,13 @@ typedef unsigned short __u16; > > typedef __signed__ int __s32; > > typedef unsigned int __u32; > > > > +#ifdef __KERNEL__ > > +typedef __signed__ long long __s64; > > +typedef unsigned long long __u64; > > +#else > > typedef __signed__ long __s64; > > typedef unsigned long __u64; > > +#endif > > > > #endif /* __ASSEMBLY__ */ > > This is (IMO) a desirable change and will prevent a heck of a lot of > goofing around, and will permit a lot of prior goofing around to > be removed. > > But I bet there are lots of instalces of printk("%l", some_u64) down in > arch code where the type of u64 _is_ known which will now spew warnings. > > Oh well. As a rough estimate: concordia powerpc(master) $ find arch/powerpc/ ! -name '*32.*' | xargs grep "%l" | grep -v "%ll" | wc -l 635 Someone's gonna get a lot of git points for fixing all those. Might keep the speeling fix crowd busy for a while. cheers -- Michael Ellerman OzLabs, IBM Australia Development Lab wwweb: http://michael.ellerman.id.au phone: +61 2 6212 1183 (tie line 70 21183) We do not inherit the earth from our ancestors, we borrow it from our children. - S.M.A.R.T Person
Attachment:
signature.asc
Description: This is a digitally signed message part