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