Hi Dave,

When parsing vmcore generated by ARM linux, Crash utility does
"phys to pfn" converting using this:

" (paddr - machdep->machspec->phys_base) >> dd->block_shift;"

First it minuses offset of the memory, and then does right shift.
But I glanced over kernel codes(2.6.34 - 3.15). I found nothing
to support the rationality of this type converting for ARM linux.

And without this patch, the crash utility can not parse my vmcores.

Also I can not get the commit messages because this code added before
crash-7.0.4. So, What's your purpose to introduce this? Is this patch
necessary for crash utility ? Or should I do some addtional work for
compatibility?

(BTW,makedumpfile also has this type problem.)

Thanks,
Liu Hua

Signed-off-by: Liu Hua <[email protected]>
---
 diskdump.c | 8 --------
 1 file changed, 8 deletions(-)

diff --git a/diskdump.c b/diskdump.c
index e230c1f..1d72364 100644
--- a/diskdump.c
+++ b/diskdump.c
@@ -914,15 +914,7 @@ page_is_cached(physaddr_t paddr)
 static ulong
 paddr_to_pfn(physaddr_t paddr)
 {
-#ifdef ARM
-       /*
-        * In ARM, PFN 0 means first page in kernel direct-mapped view.
-        * This is also first page in mem_map as well.
-        */
-       return (paddr - machdep->machspec->phys_base) >> dd->block_shift;
-#else
        return paddr >> dd->block_shift;
-#endif
 }
 
 /*
-- 
1.9.0

--
Crash-utility mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/crash-utility

Reply via email to