diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 4bd55f26191..4bd668109ef 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2009-01-20  Kazu Hirata  <kazu@codesourcery.com>
+
+	* gdb/procfs.c (info_mappings_callback): Cast map->pr_size to
+	unsigned long.
+
 2009-01-20  Daniel Jacobowitz  <dan@codesourcery.com>
 
 	PR gdb/9346
diff --git a/gdb/procfs.c b/gdb/procfs.c
index ea8648e61a7..4587fdd37b2 100644
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -5791,17 +5791,17 @@ info_mappings_callback (struct prmap *map, int (*ignore) (), void *unused)
 #endif
 
   if (gdbarch_addr_bit (current_gdbarch) == 32)
-    printf_filtered ("\t%#10lx %#10lx %#10x %#10x %7s\n",
+    printf_filtered ("\t%#10lx %#10lx %#10lx %#10x %7s\n",
 		     (unsigned long) map->pr_vaddr,
 		     (unsigned long) map->pr_vaddr + map->pr_size - 1,
-		     map->pr_size,
+		     (unsigned long) map->pr_size,
 		     pr_off,
 		     mappingflags (map->pr_mflags));
   else
-    printf_filtered ("  %#18lx %#18lx %#10x %#10x %7s\n",
+    printf_filtered ("  %#18lx %#18lx %#10lx %#10x %7s\n",
 		     (unsigned long) map->pr_vaddr,
 		     (unsigned long) map->pr_vaddr + map->pr_size - 1,
-		     map->pr_size,
+		     (unsigned long) map->pr_size,
 		     pr_off,
 		     mappingflags (map->pr_mflags));