Re: Missing version line in System.map file?

From: Randy Dunlap
Date: Wed Nov 29 2017 - 14:07:47 EST


On 11/28/2017 07:20 PM, Lee Strobel wrote:
> Hi,
>
> I have a question about the Linux kernel, which I have been trying to
> find an answer to through various forums for some time now, but without
> success. I'm wondering if anyone on this mailing list might be able to
> help?
>
> I've been trying to build a Linux From Scratch (LFS) system, using
> SysVinit and sysklogd. However, when I tried to boot up, klogd wasn't
> accepting the System.map file, printing log messages such as:
>
> Oct 9 17:24:17 <lee_lfs> kernel: klogd 1.5.1, log source = /proc/kmsg
> started.
> Oct 9 17:24:17 <lee_lfs> kernel: Inspecting /boot/System.map
> Oct 9 17:24:17 <lee_lfs> kernel: Cannot find map file.
>
> So, I dug into the source code for klogd a little bit, and it appears
> the reason the map file wasn't being accepted was because it didn't
> contain a 'version' line, which klogd was looking for, in the form:
>
> [address] [type] Version_XXXXX
>
> (where XXXXX is the kernel version # in base 256).
>
> So, I've been asking around on various forums. It seems that none of the
> map files that are being produced by more recent kernel versions include
> this line and no-one that I've spoken to on the Linux user forums seems
> to know why this is.
>
> Was a change made to the kernel, to remove this 'version' line
> from the map file? If so, how are the newer init systems verifying that
> the map file is the same version as the running kernel? Perhaps sysklogd
> needs to be updated?
>
> By the way, I tried adding a 'dummy' version line to my map file and
> klogd accepted it fine.
>
> Hopefully someone out there can assist, as no-one in the Linux user
> community seems to know what is going on with this.
>
> Best regards,
>
> Lee Strobel
> Engineer/Tinkerer/Free Software Supporter ..

Hi,

Having that symbol in the System.map file depends on the kernel config
symbol CONFIG_KALLSYMS. KALLSYMS must be disabled (unset) for that
symbol to be generated. I don't know why it's like that.

ffffffff815e50a8 B Version_197216

Ted, do you have any idea about that?

thanks.

--
~Randy