build warnings: multi_v7_defconfig + LPAE, printk with variable types
Kevin Hilman
khilman at linaro.org
Wed Aug 21 11:49:36 EDT 2013
Fabio Estevam <festevam at gmail.com> writes:
> On Wed, Aug 21, 2013 at 12:15 PM, Kevin Hilman <khilman at linaro.org> wrote:
>> I've started auto-building the multi_v7_defconfig with LPAE enabled, and
>> noticed a handful of warnings[1]
>>
>> Several are due to using prink format on a type that changes with a
>> config option (e.g several below use %x to print a resource_size_t,
>> which is obviously different between 32- and 64-bit builds.
>>
>> So this got me to wondering if there is "one true way" for using printk
>> on types that might change with config option (preferably without
>> ifdef.)
>>
>> The one that comes to mind would be to just always cast to the larger of
>> the types and use the correspondig format. For the ones below, it would
>> mean casting to (u64) and using '%llx'.
>>
>> Is there a better way?
>
> Yes, according to Documentation/printk-formats.txt:
> "Physical addresses:
>
> %pa 0x01234567 or 0x0123456789abcdef
>
> For printing a phys_addr_t type (and its derivatives, such as
> resource_size_t) which can vary based on build options, regardless of
> the width of the CPU data path. Passed by reference."
doh, RTFM. That one is new since the last time I read it.
>
> I can send a patch fixing these warnings if you want.
>
Yes, please. Thanks!
Please split it up into in to one patch for arch/arm/mach-omap2, one for
drivers/dma/* and one for drivers/spi/* so they can be merged through
the proper maintainers.
Thanks,
Kevin
More information about the linux-arm-kernel
mailing list