]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
powerpc: Add a (CPU/runtime features) flags set to pcpu struct
authorJustin Hibbits <jhibbits@FreeBSD.org>
Sat, 6 Jun 2020 02:40:52 +0000 (02:40 +0000)
committerJustin Hibbits <jhibbits@FreeBSD.org>
Sat, 6 Jun 2020 02:40:52 +0000 (02:40 +0000)
commit3f24b505677a92cbcfa6ad3222df411917ef3e4e
treecffcfbaef5d443feb0df379a17ac7b937bc24307
parentdcf563030a27105873a44bcad4ddd5379047557a
powerpc: Add a (CPU/runtime features) flags set to pcpu struct

Summary:
The point of this addition is to cache CPU behavior 'features', to avoid
having to recompute based on CPU, etc.

The first such use case is to avoid the unnecessary manipulation of the
SLBs (Segment Lookaside Buffers) when using the Radix pmap on POWER9.
Since we already get the PCPU pointer wherever we swap the SLB entries,
we can use a cached flag to check if it's necessary to perform the
operation anyway, and skip it when not.

Reviewed by: bdragon
Differential Revision: https://reviews.freebsd.org/D24908
sys/powerpc/aim/mmu_radix.c
sys/powerpc/aim/trap_subr64.S
sys/powerpc/include/pcpu.h
sys/powerpc/powerpc/db_interface.c
sys/powerpc/powerpc/genassym.c
sys/powerpc/powerpc/mp_machdep.c