# System.map not found - Unable to check symbols [HELP]

## scvalex

Just upgraded the kernel to 2.6.15-gentoo-r1 and now I get this message during init.

1) Is this bad? How bad?

2) How do I fix it?

Note: Could this be because I've updated some configuration files?

----------

## thesnowman

 *scvalex wrote:*   

> 1) Is this bad? How bad?

 

Don't know.  Probably not.

 *scvalex wrote:*   

> 2) How do I fix it?

 

After compiling your kernel:

```
# cp /usr/src/linux/System.map /boot
```

----------

## scvalex

Thanks a lot.

----------

## linuxtuxhellsinki

I've got this very same error, while the correct System.map(>symlink to 2.6.15-r1) is in /boot   :Question:   :Question: 

----------

## z00mIn

 *linuxtuxhellsinki wrote:*   

> I've got this very same error, while the correct System.map(>symlink to 2.6.15-r1) is in /boot   

 

Same with me. First I thought this had to do with /boot mounted as no-auto, but I've always done this that way and the module dependency anyway happens long before any partitions are mounted...

Mounting it auto doesn't help and rebuilding and re-installing the kernel and the system map doesn't help, either.

/boot/System.map is a symlink to /boot/System.map-2.6.13-gentoo-r3_20060203_1400 created by make install

Sigh, just chasing errors today   :Crying or Very sad: 

CU Z>

----------

## MickKi

I've been having this error since the 2.6.14-gentoo-r5 kernel.  Not only so, but it started happening the best part of three weeks after I started using that kernel.  Recompiling/recopying System.map to /boot did not help.  The error remains with the 2.6.15-gentoo-r1 kernel.

I am not sure when it started, but I suspect a udev update (could be wrong, of course).

Anyone made any progress with resolving it?  Other than delaying the boot cycle it does not seem to have an adverse effect.   :Confused: 

----------

## z00mIn

 *MickKi wrote:*   

> Anyone made any progress with resolving it?  Other than delaying the boot cycle it does not seem to have an adverse effect.  

 

No, none whatsoever.

I think it started occurring after a emerge sync / emerge world on February 2nd which also included a 2.6.13-gentoo-r3 --> 2.6.15-gentoo-r1 kernel update - at least as far as the sources are concerned, I still have /usr/src/linux pointing to the older version. This might be the problem. Maybe I find the time to build & start using the new kernel next week.

CU Z>

----------

## Johnny_Bit

This error is caused mostly by System.map being on another partition than root.

----------

## assaf

 *MickKi wrote:*   

> I am not sure when it started, but I suspect a udev update (could be wrong, of course).
> 
> 

 

More likely a baselayout upgrade

----------

## MickKi

 *Johnny_Bit wrote:*   

> This error is caused mostly by System.map being on another partition than root.

 Hmm, I'll create a link when I get back to my PC at home.  My /usr is on a different partition to my /.  Why is this suddenly a problem?

 *assaf wrote:*   

> assaf

 Yep, there was a baselayout update just about that time.  Better check bugzilla?

----------

## z00mIn

 *Johnny_Bit wrote:*   

> This error is caused mostly by System.map being on another partition than root.

 

AFAI can remember, I always had a /boot partition with System.map on it for as long as I've been using Linux (since kernel 1.2.8 or so) and this is the first time I see this problem.

CU Z>

----------

## assaf

There's a bug and a patch here: https://bugs.gentoo.org/show_bug.cgi?id=104288

Haven't tried it yet.

EDIT> Looking at the patch I don't think it will work. It simply looks for System.map in /lib/modules/${KV}/build instead of /usr/src/linux. But in my system 'build' is a symlink to /usr/src/linux so it will still be broken when /usr isn't mounted.

----------

## MickKi

This link says that upon bootup klogd looks into: *Quote:*   

> /boot/System.map 
> 
> /System.map 
> 
> /usr/src/linux/System.map

 It also mentions that klogd intelligently searches for the correct version.  Perhaps the problem is created by some change in the klogd?  Was that part of the system baselayout update?

What I'm saying is that my /usr has always been on a separate partition which is not yet mounted at boot time.  Nevertheless, klogd seemed to look into /boot to find the correct version of System.map without any problems.  Now it seems that it doesn't.

----------

## assaf

Is the System.map in /boot for real or is it a link to the one on /usr?

It is possible that previously /usr was being mounted before this check, and now that the order has changed you get the warning.

Besides, my understanding is that this file is almost completely useless for 2.6 series kernels, so I guess this can be safely commented out / ignored (unless you're using 2.4.x).

----------

## linuxtuxhellsinki

I've always also had /boot partition and symlink is pointing to right map, but 1st time of this error   :Confused: 

```
lrwxrwxrwx  1 root root      27 Feb  3 00:33 System.map -> System.map-2.6.15-gentoo-r1

-rw-r--r--  1 root root 1098403 Sep 20 01:00 System.map-2.6.12-gentoo-r10

-rw-r--r--  1 root root  875824 Feb  3 00:33 System.map-2.6.15-gentoo-r1

lrwxrwxrwx  1 root root      28 Sep 20 01:46 System.map.old -> System.map-2.6.12-gentoo-r10
```

----------

## MickKi

 *assaf wrote:*   

> Is the System.map in /boot for real or is it a link to the one on /usr?

 It's a real file.  I copy it and name it manually each time I compile a new kernel.  I was going to create a symlink in case klogd has lost its intelligence and does not like the way I name the copied file, but read above that others who have symlinked it also have the same problem.

```
# ls -la /boot

total 8758

drwxr-xr-x   4 root root    1024 Feb 12 15:43 .

drwxr-xr-x  19 root root     552 May 15  2005 ..

-rw-r--r--   1 root root       0 Oct 27  2004 .keep

-rw-------   1 root root  932114 Jan 11 22:13 System.map-2.6.14-gentoo-r5

-rw-------   1 root root  946495 Feb 12 15:41 System.map-2.6.15-gentoo-r1

lrwxrwxrwx   1 root root       1 Dec  4  2004 boot -> .

-rw-------   1 root root   38145 Jan 11 22:13 config-2.6.14-gentoo-r5

-rw-------   1 root root   39356 Feb 12 15:41 config-2.6.15-gentoo-r1

-rw-------   1 root root  604095 Jun 10  2005 fbsplash-emergence-1024x768

-rw-------   1 root root 1216636 Aug 20 18:24 fbsplash-emergence-1280x1024

drwxr-xr-x   2 root root    1024 Feb 12 16:32 grub

-rw-------   1 root root 2575001 Jan 11 22:14 kernel-2.6.14-gentoo-r5

-rw-------   1 root root 2551648 Feb 12 15:37 kernel-2.6.15-gentoo-r1

drwx------   2 root root   12288 Dec  4  2004 lost+found
```

 *assaf wrote:*   

> It is possible that previously /usr was being mounted before this check, and now that the order has changed you get the warning.

 No, only root is mounted at the beginning, then all modules are loaded, then the remaining partitions are mounted (inc. /usr), then the different services are started.  Something has changed in the baselayout and now the boot stalls for a while just before the modules are loaded.

----------

## linuxtuxhellsinki

MickKi,

It seems like you don't have that System.map symlink to your System.map-2.6.15-gentoo-r1, while I don't think it is helping cause I've it (& the problem) and the same Kernel.

And because I've /boot partition then the Kernel is making the symbolic links automatically when I run make install at the end of compiling the Kernel.

----------

## MickKi

I've never had the links.  I always copied and renamed System.map, .config and kernel image manually.  The links were not created automatically.  Perhaps I should have created them first for make && make modules_install to pick these up?

In any case, as you say it's irrelevant to the cause of the error.

----------

## Oo.et.oO

is there a fix yet for this or what??

----------

## olger901

 *Oo.et.oO wrote:*   

> is there a fix yet for this or what??

 

Yes copy system.map to /boot

----------

## MickKi

Nah! Won't work.  I've always copied my System.map to /boot.

----------

## TRx

Same problem here  :Sad: 

----------

## gtbX

this may be a bit of a n00b question, but what exactly does System.map do / is used for?

I did a fresh install on an old laptop, and its the first time i've seen this error.  On my other systems, I don't even copy System.map to the /boot partition with no (apparent) ill effects.  This laptop only has partitions for / and /home anyway, and System.map is in /boot so I doubt thats the problem.. but the kernel source is missing (I removed it to save space).

Calculating module dependencies is the longest part of the init process.. will having System.map speed it up?

I'll symlink /boot/System.map to /usr/src/linux/System.map and see if that helps.

----------

## linuxchimp

Has anyone figured this out...system boots fine but the message is annoying...especially on live-cds....

----------

## fratotec

Hello Guys,

I installed the ( still masked ) baselayout-1.12.0_pre16-r3 and bash-3.1_p11, which solved the problem of System.map not found.

The problem seems do be really in /sbin/modules_update.

In baselayout-1.11... it searches for the System.map in /usr/src/linux... and if /usr is a separate partition, this partition is not 

mounted at this time.

```
if [ -d "`depdir`" -a -f /proc/modules ]

then

        if [ -f /usr/src/linux/System.map ]; then

                depmod -a -F /usr/src/linux/System.map ${KV}

        else

                ewarn "System.map not found - unable to check symbols"

        fi

fi

```

In baselayout-1.12 ... it searches for the System.map in /lib/modules/{kernel_version}/build.... which normally is on the already

mounted root partition and só it works.....

```
if [[ ${CFGFILE2} -nt /lib/modules/${KV}/modules.dep ]] ; then

        if [[ -d $(depdir) ]] ; then

                if [[ -f /lib/modules/${KV}/build/System.map ]] ; then

                        depmod -a -F /lib/modules/${KV}/build/System.map ${KV}

                else

                        depmod -a ${KV}

```

I only had do adjust my /etc/conf.d/net configuration file after the upgrade.... no other implications....

----------

## TRx

 *fratotec wrote:*   

> Hello Guys,
> 
> I installed the ( still masked ) baselayout-1.12.0_pre16-r3 and bash-3.1_p11, which solved the problem of System.map not found.
> 
> [...]
> ...

 

Gonna try this and see if it works.

Thanks.

EDIT: Updating baselayout as commented above, worked like a charm  :Very Happy:   -- Thanks a lot

----------

## salam

my solution:

edited /sbin/modules-update and changed path to system.map from /usr/src/linux..... to this:

```
        if [ -f /System.map ]; then

                depmod -a -F /System.map ${KV}

```

then copied System.map to / and it works

as only root is mounted during module processing,i assume, the file can be anywhere on / partition (i have /usr on LVM so that's the reason the system was not able to find the file before lvm initialized)

----------

## TRx

 *salam wrote:*   

> my solution:
> 
> edited /sbin/modules-update and changed path to system.map from /usr/src/linux..... to this:
> 
> ```
> ...

 

New baselayout fixes it doing a similar thing...

greets

----------

## tiredoldcoder

1. Is this the same problem?

```

Root device is (3, 3)

Boot sector 512 bytes.

Setup is 4618 bytes.

System is 2010 kB

Kernel: arch/i386/boot/bzImage is ready  (#5)

  Building modules, stage 2.

  MODPOST

  CC      drivers/acpi/ibm_acpi.mod.o

  LD [M]  drivers/acpi/ibm_acpi.ko

  CC      drivers/acpi/video.mod.o

  LD [M]  drivers/acpi/video.ko

  CC      drivers/scsi/dpt_i2o.mod.o

  LD [M]  drivers/scsi/dpt_i2o.ko

  CC      drivers/scsi/ipr.mod.o

  LD [M]  drivers/scsi/ipr.ko

  CC      drivers/scsi/sata_sis.mod.o

  LD [M]  drivers/scsi/sata_sis.ko

  CC      drivers/scsi/sata_sx4.mod.o

  LD [M]  drivers/scsi/sata_sx4.ko

  INSTALL drivers/acpi/ibm_acpi.ko

  INSTALL drivers/acpi/video.ko

  INSTALL drivers/scsi/dpt_i2o.ko

  INSTALL drivers/scsi/ipr.ko

  INSTALL drivers/scsi/sata_sis.ko

  INSTALL drivers/scsi/sata_sx4.ko

if [ -r System.map -a -x /sbin/depmod ]; then /sbin/depmod -ae -F System.map  2.6.15-gentoo-r1; fi

make failed!

```

2. And why moving a copy of System.map to / solve the problem?

----------

## linuxtuxhellsinki

 *tiredoldcoder wrote:*   

> 2. And why moving a copy of System.map to / solve the problem?

 

Cause / is mounted & readable at boot-time and /boot & /usr aren't if they're in separate partitions   :Confused: 

----------

## tiredoldcoder

Duh on me for not explaining: I ask because the System.map file is created in /usr/src/linux (where the kernel builds)

----------

## sidious

hm, I think the new baselayout wouldn't fix the problem because /lib/modules/{KV}/build is a symlink to /usr/src/linux on my system.

and /usr is on its own partition....

----------

## xsteadfastx

still nothing for solving that problem? mmhhh too bad

----------

