Module Name: src Committed By: matt Date: Wed Dec 22 06:13:36 UTC 2010
Modified Files: src/sys/arch/mips/conf [matt-nb5-mips64]: kern.ldscript src/sys/arch/mips/include [matt-nb5-mips64]: locore.h src/sys/arch/mips/mips [matt-nb5-mips64]: locore.S mips_fixup.c mips_machdep.c spl_stubs.c Log Message: Rework how fixups are processed. Inside of generating a table, we just scan kernel text for jumps to locations between (__stub_start, __stub_end] and if found, we actually decode the instructions in the stub to find out where the stub would eventually jump to and then patch the original jump to jump directly to it bypassing the stub. This is slightly slower than the previous method but it's a simplier and new stubs get automagically handled. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.5.78.1 src/sys/arch/mips/conf/kern.ldscript cvs rdiff -u -r1.78.36.1.2.25 -r1.78.36.1.2.26 \ src/sys/arch/mips/include/locore.h cvs rdiff -u -r1.167.38.20 -r1.167.38.21 src/sys/arch/mips/mips/locore.S cvs rdiff -u -r1.1.2.5 -r1.1.2.6 src/sys/arch/mips/mips/mips_fixup.c cvs rdiff -u -r1.205.4.1.2.1.2.48 -r1.205.4.1.2.1.2.49 \ src/sys/arch/mips/mips/mips_machdep.c cvs rdiff -u -r1.1.2.2 -r1.1.2.3 src/sys/arch/mips/mips/spl_stubs.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.