PERFORCE change 50544 for review

Peter Wemm peter at FreeBSD.org
Tue Apr 6 17:48:39 PDT 2004


http://perforce.freebsd.org/chv.cgi?CH=50544

Change 50544 by peter at peter_daintree on 2004/04/06 17:47:08

	mark runtime kldload as done.
	add new entry for kldxref and loader preload support.

Affected files ...

.. //depot/projects/hammer/TODO.txt#11 edit

Differences ...

==== //depot/projects/hammer/TODO.txt#11 (text+ko) ====

@@ -1,4 +1,4 @@
-$P4: //depot/projects/hammer/TODO.txt#10 $
+$P4: //depot/projects/hammer/TODO.txt#11 $
 
 reread the logs etc and check out the "XXX worry about this later" stuff
 
@@ -7,13 +7,10 @@
 USER_LDT (however, there is a syscall to set the %fs and %gs base values
   to arbitary 64 bit addresses).
 
-kld module support (the elf_machdep.c relocator is wrong, it uses the old value
-rather than addends like it should.  See alpha/sparc64 for clues.)
-XXX: can't do this without hacking binutils.
-XXX: no, its worse than that.  Its completely impossible with the current
-binutils without writing a whole bunch of bfd code.  No way in hell.
-Instead, just give in and write a .o file loader, eg: the .kld file that
-we use as the final step towards producing the .ko file.
+kld preload support, teach the loader how to read new-style .ko files,
+as well as kldxref.  kldxref should be easy, it should be able to just
+read the modmetadata section directly, apply the relocs for that section,
+and use that to find the pointers to the other sections.
 
 finish the missing relocation types in rtld-elf/amd64/reloc.c (easy)
 
@@ -91,3 +88,10 @@
 netstat -i  coredumps.  Investigate.
 Is this a compiler bug or a libkvm or /dev/kmem bug?
 
+kld module support (the elf_machdep.c relocator is wrong, it uses the old value
+rather than addends like it should.  See alpha/sparc64 for clues.)
+XXX: can't do this without hacking binutils.
+XXX: no, its worse than that.  Its completely impossible with the current
+binutils without writing a whole bunch of bfd code.  No way in hell.
+Instead, just give in and write a .o file loader, eg: the .kld file that
+we use as the final step towards producing the .ko file.


More information about the p4-projects mailing list