diff options
author | iedowse <iedowse@FreeBSD.org> | 2004-08-29 00:48:42 +0000 |
---|---|---|
committer | iedowse <iedowse@FreeBSD.org> | 2004-08-29 00:48:42 +0000 |
commit | 0d52a8d8ca171566ed4578aaf8dd3343be846472 (patch) | |
tree | d04731906dfe0de532e3945f9198eb4997fa6836 /sys/boot/common/load_elf32_obj.c | |
parent | 95dd728f5ca86b8ad7346a25bb7375eac27169e9 (diff) | |
download | FreeBSD-src-0d52a8d8ca171566ed4578aaf8dd3343be846472.zip FreeBSD-src-0d52a8d8ca171566ed4578aaf8dd3343be846472.tar.gz |
Add the loader side of support for preloading ELF relocatable object
format modules, which are currently only used on the amd64 platform.
This initial implementation just parses enough of the module to
allow it to extract dependencies and load all the bits into the
right place in memory, so the kernel must still do the full relocation
and linking. The details of the loaded sections are passed to the
kernel by supplying a copy of the ELF section header table as module
metadata with the MODINFOMD_SHDR tag.
Diffstat (limited to 'sys/boot/common/load_elf32_obj.c')
-rw-r--r-- | sys/boot/common/load_elf32_obj.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/boot/common/load_elf32_obj.c b/sys/boot/common/load_elf32_obj.c new file mode 100644 index 0000000..fed25ef --- /dev/null +++ b/sys/boot/common/load_elf32_obj.c @@ -0,0 +1,6 @@ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#define __ELF_WORD_SIZE 32 + +#include "load_elf_obj.c" |