freebsd-dev/sys/powerpc/booke
Justin Hibbits 2b03b6bd45 powerpc/booke: Rewrite pmap_sync_icache() a bit
* Make mmu_booke_sync_icache() use the DMAP on 64-bit prcoesses, no need to
  map the page into the user's address space.  This removes the
  pvh_global_lock from the equation on 64-bit.
* Don't map the page with user-readability on 32-bit.  I don't know what the
  chance of a given user process being able to access the NULL page when
  another process's page is added there, but it doesn't seem like a good
  idea to map it to NULL with user read permissions.
* Only sync as much as we need to.  There are only two significant places
  where pmap_sync_icache is used: proc_rwmem(), and the SIGILL second-chance
  for powerpc.  The SIGILL second chance is likely the most common, and only
  syncs 4 bytes, so avoid the other 127 loop iterations (4096 / 32 byte
  cacheline) in __syncicache().
2019-05-08 16:15:28 +00:00
..
booke_machdep.c powerpc/booke: Check for the metadata address by physical address 2018-12-03 04:47:28 +00:00
locore.S powerpc: Stop pretending we run on e500v1 cores 2019-04-30 03:45:46 +00:00
machdep_e500.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
machdep_ppc4xx.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
mp_cpudep.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
platform_bare.c sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
pmap.c powerpc/booke: Rewrite pmap_sync_icache() a bit 2019-05-08 16:15:28 +00:00
spe.c powerpcspe: Correct SPE high-component loading 2019-01-13 04:51:24 +00:00
trap_subr.S powerpc: Stop pretending we run on e500v1 cores 2019-04-30 03:45:46 +00:00