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