Subject: ksyms patches.
To: None <tech-kern@netbsd.org>
From: None <ragge@ludd.luth.se>
List: tech-kern
Date: 04/21/2003 16:01:19
I have just fixed the in-kernel symbol table stuff so that it is
ready for use. The ksyms files + diffs to other files are available at
ftp://bakfull.campus.luth.se/ksyms/
It replaces the DDB ELF symbol table and provides it to userspace via
a /dev/ksyms interface.
If an a.out kernel is loaded, DDB can still make use of the symbols
(the old logic is used) but ksyms won't work.
SYMTAB_SPACE is retained as-is; this will change to another way
of loading the initial symbol table in the future.
modload is patched to use /dev/ksyms if it exists, otherwise fall-back
to the other ways.
The kvm and libc nlist routines are not fixed here. There are a bunch of
more changes that must be done for them to work; they use mmap() to read
the symbols of a file, which cannot be used. The same is true for kvm_mkdb,
but it is questionable if it should be around; creating a static db for
kernel symbols that may move around is not necessary a good idea.
Comments?
-- Ragge