[PATCH v2 03/20] ARM: LPAE: use u32 instead of unsigned long for 32-bit ptes

Catalin Marinas catalin.marinas at arm.com
Mon Nov 15 12:39:37 EST 2010


On Mon, 2010-11-15 at 17:36 +0000, Russell King - ARM Linux wrote:
> On Mon, Nov 15, 2010 at 09:39:30AM +0000, Catalin Marinas wrote:
> > On 14 November 2010 15:14, Russell King - ARM Linux
> > <linux at arm.linux.org.uk> wrote:
> > > There will be compiler warnings because u32 is unsigned int, and we
> > > print it as %08lx.  Generic code cases pte values to (long long) and
> > > prints them using %08llx.  We should do the same.
> >
> > We still need some kind of macro because with LPAE we need %016llx
> > since the phys address can go to 40-bit and there are some additional
> > bits in the top word. Unless you'd like to always print 16 characters
> > even for 32-bit ptes (or if there is some other printk magic I'm not
> > aware of).
> 
> Eeh?  %08llx prints 8 characters _minimum_.  If it needs more to represent
> the number, it will use more characters.  You surely don't think generic
> code is brain dead enough to cast something to a 64-bit long long and
> then only print 32 bits of it???

That's correct. I was just wondering whether the alignment would look
weird with ptes being printed with different lengths.

Anyway, here comes another set of patches with this update (%08llx in
printk).

-- 
Catalin




More information about the linux-arm-kernel mailing list