Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: [matt-nb5-mips64] src/sys/arch/mips

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

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. -r1. \
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. -r1. \
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.

Home | Main Index | Thread Index | Old Index