Re: [PATCH] of: silence warnings due to max() usage

From: Rob Herring
Date: Fri Jun 03 2016 - 08:27:27 EST


On Tue, May 31, 2016 at 09:38:56AM +1000, Stephen Rothwell wrote:
> pageblock_order can be (at least) an unsigned int or an unsigned long
> depending on the kernel config and architecture, so use max_t(unsigned
> long ...) when comparing it.
>
> fixes these warnings:
>
> In file included from include/linux/list.h:8:0,
> from include/linux/kobject.h:20,
> from include/linux/of.h:21,
> from drivers/of/of_reserved_mem.c:17:
> drivers/of/of_reserved_mem.c: In function â__reserved_mem_alloc_sizeâ:
> include/linux/kernel.h:748:17: warning: comparison of distinct pointer types lacks a cast
> (void) (&_max1 == &_max2); \
> ^
> include/linux/kernel.h:747:9: note: in definition of macro âmaxâ
> typeof(y) _max2 = (y); \
> ^
> drivers/of/of_reserved_mem.c:131:48: note: in expansion of macro âmaxâ
> align = max(align, (phys_addr_t)PAGE_SIZE << max(MAX_ORDER - 1, pageblock_ord
> ^
> include/linux/kernel.h:748:17: warning: comparison of distinct pointer types lacks a cast
> (void) (&_max1 == &_max2); \
> ^
> include/linux/kernel.h:747:21: note: in definition of macro âmaxâ
> typeof(y) _max2 = (y); \
> ^
> drivers/of/of_reserved_mem.c:131:48: note: in expansion of macro âmaxâ
> align = max(align, (phys_addr_t)PAGE_SIZE << max(MAX_ORDER - 1, pageblock_ord
> ^
>
> Fixes: 1cc8e3458b51 ("drivers: of: of_reserved_mem: fixup the alignment with CMA setup")
> Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
> ---
> drivers/of/of_reserved_mem.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> Hi guys, this has been irking me for some time now ... I will add this
> to my fixes tree in linux-next today. Please apply and send to Linus.

Applied, thanks.

Rob