On Thu, Dec 14, 2000 at 11:14:29AM -0800, Peter Jay Salzman wrote:
> ethan, i had another thought about this issue.
> 
> you claim that:
> 
>       "my system finds System.map-kernelversion just fine."
> 
> i think that's inaccurate.   looking over what you _actually_ said, i think
> what you actually meant to say is:
> 
>       "nothing seems to complain about not finding a System.map file"
> 
> just because "ps" doesn't complain doesn't mean that other things aren't
> broken, or won't break in the future.  there are certain drivers that use
> the System.map file to look up symbols because they're not linked to glibc.
> how are you _sure_ that they look for the same file names that ps apparently
> does?

because i straced ps, here is an excert:

uname({sys="Linux", node="socrates", ...}) = 0
open("/boot/System.map-2.2.18", O_RDONLY|O_NONBLOCK|O_NOCTTY) = 6
            ^^^^^^^^^^^^^^^^^

that and from another post, an excert of my logs after a fresh boot:

Dec 11 05:13:44 socrates kernel: klogd 1.3-3#33.1, log source = /proc/kmsg 
started.
Dec 11 05:13:44 socrates kernel: Inspecting /boot/System.map-2.2.18
Dec 11 05:13:44 socrates kernel: Loaded 9084 symbols from 
/boot/System.map-2.2.18.
Dec 11 05:13:44 socrates kernel: Symbols match kernel version 2.2.18.

> there are programs like wine and dosemu that require an accurate
> representation of exported kernel symbols.  again, how are you sure they
> look for the same filenames that ps does?

i have used wine and it does not seem to have any problems either.  

> i think the safest thing to do, considering the complete lack of documentation
> to say otherwise, is to adhere to what the man page says.  it's safe, it's
> really not any less convenient, and it allows you to have more than one copy
> of the same compiled kernel.

since debian does NOT ever create these bogus symlinks i disagree,
instead any broken program assuming linux == redhat should be fixed.
its a very trivial change.

maintaining a /boot/System.map symlink is akin to having kernel
modules expected at /lib/modules/linux instead of /lib/modules/`uname -r` 
thus requiring a /lib/modules/linux -> /lib/modules/linux-`uname -r`
symlink.  such things are madness.  

> of course, you could say "if it ain't broke, don't fix it".  but that
> assumes a static situation.  we're always installing things and changing
> things about our systems and the installed software.  i think it's best if
> we follow the documented procedure.  and klogd is documented to look for
> System.map in a set of predetermined directories, not not
> System.map-kernelversion.
> 
> just a thought.  (and of course, maybe the man page is wrong!)

it is wrong, i don't recall where as its been so long, but it is
documented that the System.map symlink madness is long obsolete.  i
for one will never go back to that insanity, and fortunatly i have
found i don't have to things DO look for and find
/boot/System.map-`uname -r`

-- 
Ethan Benson
http://www.alaska.net/~erbenson/

Attachment: pgpJNAanImhJD.pgp
Description: PGP signature

Reply via email to