]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/commit
MFC 264990, 264994, 265020, 265025:
authorian <ian@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 17 May 2014 22:50:16 +0000 (22:50 +0000)
committerian <ian@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Sat, 17 May 2014 22:50:16 +0000 (22:50 +0000)
commit219573be0a6b12a878512e533e75449be62c1e55
tree68e73da4fcd431c6738a478384ebcba220db3e1d
parent9473f53d133578e9435ca8bd977499d969008550
MFC 264990, 264994, 265020, 265025:

  Call cpu_icache_sync_range() rather than sync_all since we know the range
  and flushing the entire icache is needlessly expensive.

  Provide a proper armv7 implementation of icache_sync_all rather than
  using armv7_idcache_wbinv_all, because wbinv_all doesn't broadcast the
  operation to other cores.  In elf_cpu_load_file() use icache_sync_all()
  and explain why it's needed (and why other sync operations aren't).

  Remove cpu_idcache_wbinv_all() from kdb_cpu_trap(), it's no longer needed.

  Explain why wbinv_all is SMP-safe when dumping, and add a missing l2 cache
  flush.  (Either it was missing here, or it isn't needed in the minidump
  case.  Adding it here seems like the safer path to consistancy.)

git-svn-id: svn://svn.freebsd.org/base/stable/10@266373 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
sys/arm/arm/cpufunc.c
sys/arm/arm/cpufunc_asm_armv7.S
sys/arm/arm/dump_machdep.c
sys/arm/arm/elf_machdep.c
sys/arm/include/cpufunc.h
sys/arm/include/kdb.h