Skip to content

Commit badbda5

Browse files
sfrothwelltorvalds
authored andcommitted
mm/cma: silence warnings due to max() usage
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/asm-generic/bug.h:13:0, from arch/powerpc/include/asm/bug.h:127, from include/linux/bug.h:4, from include/linux/mmdebug.h:4, from include/linux/mm.h:8, from include/linux/memblock.h:18, from mm/cma.c:28: mm/cma.c: In function 'cma_init_reserved_mem': include/linux/kernel.h:748:17: warning: comparison of distinct pointer types lacks a cast (void) (&_max1 == &_max2); ^ mm/cma.c:186:27: note: in expansion of macro 'max' alignment = PAGE_SIZE << max(MAX_ORDER - 1, pageblock_order); ^ mm/cma.c: In function 'cma_declare_contiguous': 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); ^ mm/cma.c:270:29: note: in expansion of macro 'max' (phys_addr_t)PAGE_SIZE << max(MAX_ORDER - 1, pageblock_order)); ^ 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); ^ mm/cma.c:270:29: note: in expansion of macro 'max' (phys_addr_t)PAGE_SIZE << max(MAX_ORDER - 1, pageblock_order)); ^ [[email protected]: coding-style fixes] Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Stephen Rothwell <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent 0798d3c commit badbda5

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

mm/cma.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,8 @@ int __init cma_init_reserved_mem(phys_addr_t base, phys_addr_t size,
183183
return -EINVAL;
184184

185185
/* ensure minimal alignment required by mm core */
186-
alignment = PAGE_SIZE << max(MAX_ORDER - 1, pageblock_order);
186+
alignment = PAGE_SIZE <<
187+
max_t(unsigned long, MAX_ORDER - 1, pageblock_order);
187188

188189
/* alignment should be aligned with order_per_bit */
189190
if (!IS_ALIGNED(alignment >> PAGE_SHIFT, 1 << order_per_bit))
@@ -266,8 +267,8 @@ int __init cma_declare_contiguous(phys_addr_t base,
266267
* migratetype page by page allocator's buddy algorithm. In the case,
267268
* you couldn't get a contiguous memory, which is not what we want.
268269
*/
269-
alignment = max(alignment,
270-
(phys_addr_t)PAGE_SIZE << max(MAX_ORDER - 1, pageblock_order));
270+
alignment = max(alignment, (phys_addr_t)PAGE_SIZE <<
271+
max_t(unsigned long, MAX_ORDER - 1, pageblock_order));
271272
base = ALIGN(base, alignment);
272273
size = ALIGN(size, alignment);
273274
limit &= ~(alignment - 1);

0 commit comments

Comments
 (0)