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
