]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
- Unlike cache invalidation and TLB demapping IPIs, reading registers from
authormarius <marius@FreeBSD.org>
Wed, 29 Aug 2012 16:56:50 +0000 (16:56 +0000)
committermarius <marius@FreeBSD.org>
Wed, 29 Aug 2012 16:56:50 +0000 (16:56 +0000)
commit9f542929d1b68240302a302a121e7c5b57b9a315
tree2eaa73b1b723055e82848535fa9eabdcff9c3628
parenta2d01ff69e383504f0f4f419b04bc526983d433c
- Unlike cache invalidation and TLB demapping IPIs, reading registers from
  other CPUs doesn't require locking so get rid of it. As the latter is used
  for the timecounter on certain machine models, using a spin lock in this
  case can lead to a deadlock with the upcoming callout(9) rework.
- Merge r134227/r167250 from x86:
  Avoid cross-IPI SMP deadlock by using the smp_ipi_mtx spin lock not only
  for smp_rendezvous_cpus() but also for the MD cache invalidation and TLB
  demapping IPIs.
- Mark some unused function arguments as such.

MFC after: 1 week
sys/kern/subr_witness.c
sys/sparc64/include/smp.h
sys/sparc64/sparc64/mp_machdep.c
sys/sparc64/sparc64/tick.c