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