I have spent some time and have gotten my relocatable kernel patches
working against the latest kernels.  I intend to push this upstream
shortly.

Could all of the people who care take a look and test this out
to make certain that it doesn't just work on my test box?

My approach is to extend bzImage so that it is an ET_DYN ELF executable
(we have what used to be a bootsector where we can put the header).
Boot loaders are explicitly not expected to process relocations.

The x86_64 kernel is simply built to live at a fixed virtual address
and the boot page tables are relocated.  The i386 kernel is built
to process relocates generated with --embedded-relocs (after vmlinux.lds.S)
has been fixed up to sort out static and dynamic relocations.

Currently there are 33 patches in my tree to do this.

The weirdest symptom I have had so far is that page faults did not
trigger the early exception handler on x86_64 (instead I got a reboot).

The code should be available shortly at:
git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/linux-2.6-reloc.git#reloc-v2.6.18-rc3

If all goes well with the testing I will push the patches to Andrew in the next 
couple 
of days.

Eric
_______________________________________________
fastboot mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/fastboot

Reply via email to