Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src
Andrew Doran <ad%NetBSD.org@localhost> writes:
> Module Name: src
> Committed By: ad
> Date: Fri Dec 19 11:21:25 UTC 2008
>
> Modified Files:
> src/common/lib/libc/arch/i386/atomic: atomic.S
> src/sys/arch/x86/include: cpufunc.h
> src/sys/arch/x86/x86: cpu.c identcpu.c patch.c
>
> Log Message:
> PR kern/40213 my i386 machine can't boot because of tsc
>
> - Patch in atomic_cas_64() twice. The first patch is early and makes it
> the MP-atomic version available if we have cmpxchg8b. The second patch
> strips the lock prefix if ncpu==1.
>
> - Fix the i486 atomic_cas_64() to not unconditionally enable interrupts.
>
>
> To generate a diff of this commit:
> cvs rdiff -r1.13 -r1.14 src/common/lib/libc/arch/i386/atomic/atomic.S
> cvs rdiff -r1.8 -r1.9 src/sys/arch/x86/include/cpufunc.h
> cvs rdiff -r1.59 -r1.60 src/sys/arch/x86/x86/cpu.c
> cvs rdiff -r1.11 -r1.12 src/sys/arch/x86/x86/identcpu.c
> cvs rdiff -r1.14 -r1.15 src/sys/arch/x86/x86/patch.c
I recently noticed that there is a guard in x86_patch() itself to
prevent multiple call. So, I guess above change just disabled most of
optimization on i386. (on the other hand, on amd64 x86_patch is
called only once from cpu_boot_secondary_processosrs() since
cpu_feature is set in very earlier stage).
enami.
Home |
Main Index |
Thread Index |
Old Index