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