Module Name: src Committed By: rmind Date: Thu Mar 17 04:46:29 UTC 2011
Modified Files: src/sys/arch/amd64/amd64 [rmind-uvmplock]: cpufunc.S genassym.cf vector.S src/sys/arch/i386/i386 [rmind-uvmplock]: genassym.cf i386func.S vector.S src/sys/arch/x86/include [rmind-uvmplock]: pmap.h src/sys/arch/x86/x86 [rmind-uvmplock]: cpu.c pmap.c pmap_tlb.c Log Message: - Fix tlbflushg() to behave like tlbflush(), if page global extension (PGE) is not (yet) enabled. This fixes the issue of stale TLB entry, experienced early on boot, when PGE is not yet set on primary CPU. - Rewrite i386/amd64 TLB interrupt handlers in C (only stubs are in assembly), which simplifies and unifies (under x86) code, plus fixes few bugs. - cpu_attach: remove assignment to cpus_running, as primary CPU might not be attached first, which causes reset (and thus missed secondary CPUs). To generate a diff of this commit: cvs rdiff -u -r1.16.4.1 -r1.16.4.2 src/sys/arch/amd64/amd64/cpufunc.S cvs rdiff -u -r1.43.4.3 -r1.43.4.4 src/sys/arch/amd64/amd64/genassym.cf cvs rdiff -u -r1.33.2.3 -r1.33.2.4 src/sys/arch/amd64/amd64/vector.S cvs rdiff -u -r1.85.2.3 -r1.85.2.4 src/sys/arch/i386/i386/genassym.cf cvs rdiff -u -r1.15 -r1.15.20.1 src/sys/arch/i386/i386/i386func.S cvs rdiff -u -r1.53.2.3 -r1.53.2.4 src/sys/arch/i386/i386/vector.S cvs rdiff -u -r1.29.2.8 -r1.29.2.9 src/sys/arch/x86/include/pmap.h cvs rdiff -u -r1.69.2.3 -r1.69.2.4 src/sys/arch/x86/x86/cpu.c cvs rdiff -u -r1.105.2.12 -r1.105.2.13 src/sys/arch/x86/x86/pmap.c cvs rdiff -u -r1.1.2.4 -r1.1.2.5 src/sys/arch/x86/x86/pmap_tlb.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.