cvs commit: src/sys/sparc64/include cache.h src/sys/sparc64/sparc64
cache.c cheetah.c spitfire.c support.S trap.c
Jake Burkholder
jake at FreeBSD.org
Mon Nov 10 22:41:55 PST 2003
jake 2003/11/10 22:41:54 PST
FreeBSD src repository
Modified files:
sys/sparc64/include cache.h
sys/sparc64/sparc64 cache.c cheetah.c spitfire.c support.S
trap.c
Log:
Fix a bug in the data access error recorvery. Before re-enabling the data
cache after a data access error we must discard all cache lines. When
disabled existing cache lines are not invalidated by stores to memory, so
we risk reading stale data that was cached before the data access error if
we don't flush them. This is especially fatal when the memory involved
is the active part of the kernel or user stack. For good measure we also
flush the instruction cache.
This fixes random crashes when the X server probes the PCI bus through
/dev/pci.
Revision Changes Path
1.10 +9 -0 src/sys/sparc64/include/cache.h
1.18 +6 -0 src/sys/sparc64/sparc64/cache.c
1.5 +16 -0 src/sys/sparc64/sparc64/cheetah.c
1.5 +27 -0 src/sys/sparc64/sparc64/spitfire.c
1.29 +0 -4 src/sys/sparc64/sparc64/support.S
1.69 +2 -0 src/sys/sparc64/sparc64/trap.c
More information about the cvs-src
mailing list