I'm sure there's a good reason for these functions to take virtual addresses
as unsigned longs, so suppress the warnings and cast them to the proper types
before calling the virt/phys conversion functions
A perfectly acceptable alternative would be to go and change free_pages() to
stop taking unsigned longs for virtual addresses, but this has a much smaller
impact.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
fastcall void free_pages(unsigned long addr, unsigned int order)
{
if (addr != 0) {
- BUG_ON(!virt_addr_valid(addr));
- __free_pages(virt_to_page(addr), order);
+ BUG_ON(!virt_addr_valid((void *)addr));
+ __free_pages(virt_to_page((void *)addr), order);
}
}