On Tue, Mar 20, 2007 at 11:18:02AM +0900, Ken'ichi Ohmichi wrote:
 
 Hi Bob,
 
 Thank you for the great report.
 
 2007/03/14 08:40:16 +0530, Vivek Goyal <vgoyal(a)in.ibm.com> wrote:
 >> =====================================
 >> Can ELF Dumpfiles Solve This Problem?
 >> =====================================
 >> 
 >> To achieve correctness with ELF dumpfiles, one could perhaps remap the
 >> four types of pages to the three types of ELF representations so that
 >> "A) Not In The Address Space" and "B) Excluded Type" were
both mapped
 >> to "1) Not In The Address Space".  Then "C) Zero Content"
would map
 >> to "2) Not In The File, Zero Fill".  You would lose the ability to
 >> know if a page were missing because it was never in the address space
 >> in the first place, or because it was excluded because of its type.
 >> But if you read a zero, you'd know it really was a zero.
 >> 
 >
 >I think this is the way to go. Why would I like to know if a page was
 >never present or mkdumpfile filtered it out? I think we can live with that
 >and lets just not create any sort of mapping for excluded pages in finally
 >generated ELF headers.
 
 In the above way, I worry that the crash utility cannot get the
 relocatable information (machdep->machspec->phys_start) on ia64.
 At ia64_calc_phys_start(), the crash utility gets phdr->p_paddr
 of region 5 memory section as the relocatable information.
 If the start of region 5 is excluded, the crash gets different
 phdr->p_paddr in the above way.
  
Sorry, I don't understand it. vmcore ELF headers should give enough
information to determine what's the kernel's virtual and physical
address.  Why should I have to have access to a particular page and because
of that take the wrong route and try to map filtered pages. 
Is ia64 kernel mapped in region 5? If yes, I won't filter out kernel
pages?
If not, still I don't understand how does it help mapping non-kernel pages
and returning zeros for that?
Thanks
Vivek