--- ./makedumpfile.c.org	2006-08-30 12:26:32.000000000 +0900
+++ ./makedumpfile.c	2006-08-30 12:28:36.000000000 +0900
@@ -407,6 +407,7 @@ int
 get_elf_info(struct DumpInfo *info)
 {
 	int i;
+	unsigned long tmp;
 	const off_t failed = (off_t)-1;
 
 	Elf32_Ehdr *elf32;
@@ -518,7 +519,9 @@ get_elf_info(struct DumpInfo *info)
 				goto out;
 	}
 	info->max_mapnr = get_max_mapnr(info);
-	info->len_bitmap = 2*divideup(info->max_mapnr, BITPERBYTE);
+	tmp = 2*divideup(info->max_mapnr, BITPERBYTE);
+	tmp = divideup(tmp, info->page_size);
+	info->len_bitmap = tmp*info->page_size;
 
 	g_free(tmp_elf_header);
 	return TRUE;
