OSDN Git Service

[PATCH] typeof __page_to_pfn with SPARSEMEM=y
authorRandy Dunlap <randy.dunlap@oracle.com>
Sat, 10 Feb 2007 09:42:59 +0000 (01:42 -0800)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Sun, 11 Feb 2007 18:51:17 +0000 (10:51 -0800)
With CONFIG_SPARSEMEM=y:

mm/rmap.c:579: warning: format '%lx' expects type 'long unsigned int', but argument 2 has type 'int'

Make __page_to_pfn() return unsigned long.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/asm-generic/memory_model.h

index 8078cbd..30d8d33 100644 (file)
@@ -54,7 +54,7 @@
 #define __page_to_pfn(pg)                                      \
 ({     struct page *__pg = (pg);                               \
        int __sec = page_to_section(__pg);                      \
-       __pg - __section_mem_map_addr(__nr_to_section(__sec));  \
+       (unsigned long)(__pg - __section_mem_map_addr(__nr_to_section(__sec))); \
 })
 
 #define __pfn_to_page(pfn)                             \