

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.
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>


---

 memhotplug-dave/mm/page_alloc.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN mm/page_alloc.c~A0-virts_are_voidstar mm/page_alloc.c
--- memhotplug/mm/page_alloc.c~A0-virts_are_voidstar	Thu Aug  5 09:40:59 2004
+++ memhotplug-dave/mm/page_alloc.c	Thu Aug  5 09:40:59 2004
@@ -808,8 +808,8 @@ EXPORT_SYMBOL(__free_pages);
 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);
 	}
 }
 

_
