2004-06-05 11:58:07

by Vivek Goyal

[permalink] [raw]
Subject: Lcrash on IA64 breaks due to duplicate symbol "modules" in System.map

Hi,

Lcrash on IA64 breaks due to the presence of multiple appearance of
symbol "modules" in System.map file. Lcrash tries to load ksyms from
dump by reading linked list of modules which starts at "modules".

Sometimes Lcrash gets confused due to multiple presence of this symbol
and is unable to load the module symbols.

On a test system, following is the output when "modules" is grepped in
System.map. I am using 2.6.5 kernel.

**********************************************************************
a0000001007d01e8 d modules
a00000010093cab0 B modules
**********************************************************************

First one is a static declaration/definition in linux/kernel/module.c.
This is the symbol lcrash is searching for to get the starting address
of list of modules.

Second one is a global declaration appearing in
linux/arch/ia64/sn/io/sn2/module.c. I am not very sure about its usage
but it seems this is being kept to maintain a list of modules keeping
some hardware specific details.

Is it a good idea to keep the two names same? If one of these can be
renamed to resolve the lcrash problem.

Thanks
Vivek