Re: [PATCH 1/4] x86: clean up asm-x86/page*.h

From: Jan Beulich
Date: Fri Dec 14 2007 - 03:53:10 EST


>>> Jeremy Fitzhardinge <jeremy@xxxxxxxx> 14.12.07 09:44 >>>
>Jan Beulich wrote:
>>> --- a/arch/x86/mm/fault_64.c
>>> +++ b/arch/x86/mm/fault_64.c
>>> @@ -158,22 +158,22 @@ void dump_pagetable(unsigned long addres
>>> pgd = __va((unsigned long)pgd & PHYSICAL_PAGE_MASK);
>>> pgd += pgd_index(address);
>>> if (bad_address(pgd)) goto bad;
>>> - printk("PGD %lx ", pgd_val(*pgd));
>>> + printk("PGD %lx ", (unsigned long)pgd_val(*pgd));
>>>
>>
>> Casts like this here and elsewhere look rather odd (in fact I think using
>> casts should really be limited to places where you either can't do it
>> differently or the code would become badly readable or much uglier
>> without them). I would therefore favor simply using the right formatting
>> specifier here.
>
>I would agree, but pgd_val() is defined as returning a pgdval_t, which
>is typedefed to be unsigned long. I'll have another look, but I don't
>think there's an appropriate format for this.

Typedef-s can be printed with the same format specifier as the underlying
type. But u64 is (at least in plain -rc5) a typedef of 'unsigned long long', so
the compiler validly warns about the use of 'l' there, and I would assume it's
those compiler warnings that you want to get rid of...

Jan

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/