On Wed, Mar 28, 2007 at 03:13:22PM +0900, Magnus Damm wrote:
> Hi Vivek!
> 
> On 3/28/07, Vivek Goyal <[EMAIL PROTECTED]> wrote:
> >On Wed, Mar 28, 2007 at 01:37:31PM +0900, Magnus Damm wrote:
> >> --- 0001/kexec/arch/ia64/crashdump-ia64.c
> >> +++ work/kexec/arch/ia64/crashdump-ia64.c     2007-03-28 
> >13:05:21.000000000 +0900
> >> @@ -224,7 +224,7 @@ int load_crashdump_segments(struct kexec
> >>               if (get_crash_memory_ranges(&mem_range, &nr_ranges) == 0) {
> >>
> >>                       info->kern_paddr_start = kernel_code_start;
> >> -                     info->kern_vaddr_start = LOAD_OFFSET;
> >> +                     info->kern_vaddr_offset = LOAD_OFFSET;
> >
> >Hi Magnus,
> >
> >I am unable to understand the introduction if info->kern_vaddr_offset
> >and then special handling of it while creating the 64 bit headers. Can
> >you please explain a bit more why it is required. Why can't we go the
> >regular way of getting the kernel virtual and physical address and continue
> >creating a separate header for it for IA64?
> 
> The special handling of kern_vaddr_offset is there because we need to
> scan through the memory segments to get the physical address that we
> then add to kern_vaddr_offset. This is different compared to
> kern_vaddr_start which only contains a fixed value.
> 

Are you doing this because you can't get the kernel virtual address in
user space? Hence adding the physical address of the kernel to LOAD_OFFSET
to comeup with virtual address?

Won't /proc/kcore give this information on IA64? It works for x86_64. 

Even otherwise, then this is a architecture detail and should be part
of architecture code and not arch independent code. This
info->kerne_vaddr_offset is not intitutive at all.

I think in arch dependent code you should set
kern_vaddr=LOAD_OFFSET + kernel_physical start.

Thanks
Vivek
_______________________________________________
fastboot mailing list
[email protected]
https://lists.linux-foundation.org/mailman/listinfo/fastboot

Reply via email to