Re: kexec reports "Cannot get kernel _text symbol address" on arm64 platform

From: Alexander Kamensky
Date: Thu Aug 24 2023 - 11:06:20 EST


On Wed, Aug 23, 2023 at 12:09 PM Pandey, Radhey Shyam
<radhey.shyam.pandey@xxxxxxx> wrote:
>
> > -----Original Message-----
> > From: Alexander Kamensky <alexander.kamensky42@xxxxxxxxx>
> > Sent: Tuesday, August 22, 2023 9:24 AM
> > To: Pandey, Radhey Shyam <radhey.shyam.pandey@xxxxxxx>
> > Cc: bhe@xxxxxxxxxx; piliu@xxxxxxxxxx; kexec@xxxxxxxxxxxxxxxxxxx; linux-
> > kernel@xxxxxxxxxxxxxxx; Sarangi, Anirudha <anirudha.sarangi@xxxxxxx>
> > Subject: Re: kexec reports "Cannot get kernel _text symbol address" on
> > arm64 platform
> >
> > Hi All,
> >
> > Sorry for the top post, but I believe that I might have posted a fix for this
> > issue a couple days ago.
> >
> > Please check and see if it helps
> > https://lore.kernel.org/kexec/20230819191119.975299-1-
> > alexander.kamensky42@xxxxxxxxx/T/#u
> >
> > Explanation for the issue I observed with a similar secondary kernel
> > traceback on arm64 is in the commit message.
>
> I fetched latest kexec sources (777ca453ca69e46f7376b07ba6727bd261ec97ef)
> and applied above patch, a bit improved but still vmcore size is huge.
>
> / # ls -lrth /proc/vmcore
> -r-------- 1 root root 15.5G Aug 23 18:55 /proc/vmcore
>
How big is your system memory? If it is 16G then the above is normal.

The most important thing is can your secondary kernel read it? For example

cat /proc/vmcore > /dev/null

If you want to capture only kernel core out of /proc/vmcore you need
to use makedumpfile
to filter out the rest of the memory.

Thanks,
Alexander

> Thanks,
> Radhey