]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
powerpc: Use IFUNCs for copyin/copyout/etc
authorJustin Hibbits <jhibbits@FreeBSD.org>
Sat, 6 Jun 2020 03:09:12 +0000 (03:09 +0000)
committerJustin Hibbits <jhibbits@FreeBSD.org>
Sat, 6 Jun 2020 03:09:12 +0000 (03:09 +0000)
commitd31111442e742c68e0e91fa40f00c0fae054fcc6
treebbfb8ec19dd769c8d934d83733be02cc4bd3dc8f
parent0ad202f312f6da4f2774ecb7a3f3c2a05b3dde5f
powerpc: Use IFUNCs for copyin/copyout/etc

Summary:
Radix on AIM, and all of Book-E (currently), can do direct addressing of
user space, instead of needing to map user addresses into kernel space.
Take advantage of this to optimize the copy(9) functions for this
behavior, and avoid effectively NOP translations.

Test Plan: Tested on powerpcspe, powerpc64/booke, powerpc64/AIM

Reviewed by: bdragon
Differential Revision: https://reviews.freebsd.org/D25129
sys/conf/files.powerpc
sys/powerpc/aim/mmu_radix.c
sys/powerpc/booke/pmap.c
sys/powerpc/include/asm.h
sys/powerpc/include/mmuvar.h
sys/powerpc/include/param.h
sys/powerpc/powerpc/copyinout.c
sys/powerpc/powerpc/pmap_dispatch.c
sys/powerpc/powerpc/support.S [new file with mode: 0644]
sys/powerpc/powerpc/trap.c