[PATCH] makedumpfile: fix off-by-one bug in page_to_pfn()
Wen Congyang
wency at cn.fujitsu.com
Wed Nov 23 00:53:51 EST 2011
The pfn region in a mmd is [mmd->pfn_start, mmd->pfn_end).
So the max index should be mmd->pfn_end - mmd->pfn_start -1.
If index >=(not >) mmd->pfn_end - mmd->pfn_start, we should check
the next mmd.
Signed-off-by: Wen Congyang <wency at cn.fujitsu.com>
---
makedumpfile.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/makedumpfile.c b/makedumpfile.c
index 7b7c266..db8e53f 100644
--- a/makedumpfile.c
+++ b/makedumpfile.c
@@ -2879,7 +2879,7 @@ page_to_pfn(unsigned long page)
if (page < mmd->mem_map)
continue;
index = (page - mmd->mem_map) / SIZE(page);
- if (index > mmd->pfn_end - mmd->pfn_start)
+ if (index >= mmd->pfn_end - mmd->pfn_start)
continue;
pfn = mmd->pfn_start + index;
break;
--
1.7.1
More information about the kexec
mailing list