0

In relation to this question that I asked previously: Linux Kernel: 'Cannot find map file'

The System.map file that is being generated by my linux kernel build (4.12.7) does not contain a line of form:

[address] [type] Version_XXXXX

(where 'XXXXX' is the kernel version, encoded in base 256)

I believe the file is supposed to include this line, as this is what klogd is looking for to verify that the map file is the same version as the running kernel (right now, it is rejecting the map file).

So, why is this line not being generated? Has anyone encountered a similar issue before, when building kernels? Are there any configuration options that relate to the map file?

Would be great if some other users could check their System.map files, to see if they contain such a line (especially if they are running SysVinit).

2
  • 1
    My System.map doesn't contain that line either. It's a vanilla 4.3.10 kernel compiled from source based on an original Ubuntu config.
    – schaiba
    Commented Nov 3, 2017 at 7:22
  • @schaiba Interesting - it seems like a pattern is emerging, as it's not present in the map file that came with my pre-packaged Trisquel install either. Thing is, without that line, there is no way klogd would ever accept the file. Looks like I may have to send this to the kernel devs and see what they say.
    – Time4Tea
    Commented Nov 3, 2017 at 10:36

1 Answer 1

0

I took this one to the kernel dev team, via the 'linux-kernel' mailing list. He looked into it and apparently there was a change made somewhere around kernel version 2.6.27, where that version line is only printed in the System.map file if the CONFIG_KALLSYMS option is not enabled. With my kernel (and probably most others by default) it was enabled, which meant that klogd wouldn't accept the map file.

He said that, as far as he is concerned, he would be happy for it to be changed so the version line is always included (after all, it is only one line of text). He didn't guarantee that it will make into the next released version, but hopefully it will. In the meantime, disabling CONFIG_KALLSYMS should cause that version line to print, if needed.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .