On Tue, 20 Aug 2024 19:23:44 +0200, Christophe Leroy wrote: > This series does mainly two things: > - Remove the 8M alignment constraint on STRICT_KERNEL_RWX on 8xx to > avoid wasting memory. > - Speed-up TLB misses by duplicating kernel PGD entries into each > task's PGDIRs to avoid the address comparison in TLB miss handler. > > On 8xx, the address comparison takes a significant part of CPU cycles > as it requires saving/restoring CR, and because a taken branch > requires 2 cycles. > On 603 it is less significant because CR is saved automatically and > has to be restored anyway but it is still worth it. > > [...]
Applied to powerpc/next. [01/14] powerpc/8xx: Fix initial memory mapping https://git.kernel.org/powerpc/c/f9f2bff64c2f0dbee57be3d8c2741357ad3d05e6 [02/14] powerpc/8xx: Fix kernel vs user address comparison https://git.kernel.org/powerpc/c/65a82e117ffeeab0baf6f871a1cab11a28ace183 [03/14] powerpc/8xx: Copy kernel PGD entries into all PGDIRs https://git.kernel.org/powerpc/c/985db026c34dfc45213649023d5505822a5dcd78 [04/14] Revert "powerpc/8xx: Always pin kernel text TLB" https://git.kernel.org/powerpc/c/1a736d98c84acd38e40fff69528ce7aaa55dd22d [05/14] powerpc/8xx: Allow setting DATA alignment even with STRICT_KERNEL_RWX https://git.kernel.org/powerpc/c/bcf77a70c4ffc9b01044229de87f5b6f9c1f7913 [06/14] powerpc/8xx: Reduce default size of module/execmem area https://git.kernel.org/powerpc/c/c5eec4df25c34f4bee8c757ed157f5d96eaba554 [07/14] powerpc/8xx: Preallocate execmem page tables https://git.kernel.org/powerpc/c/16a71c045186a11c1c743934e330de78162b86dd [08/14] powerpc/8xx: Inconditionally use task PGDIR in ITLB misses https://git.kernel.org/powerpc/c/33c527522f394f63cc589a6f7af990b2232444c8 [09/14] powerpc/8xx: Inconditionally use task PGDIR in DTLB misses https://git.kernel.org/powerpc/c/ac9f97ff8b324905d457f2694490c63b9deccbc6 [10/14] powerpc/32s: Reduce default size of module/execmem area https://git.kernel.org/powerpc/c/2f2b9a3adc66e978a1248ffb38df8477e8e97c57 [11/14] powerpc/603: Copy kernel PGD entries into all PGDIRs and preallocate execmem page tables https://git.kernel.org/powerpc/c/82ef440f9a38a1fd7f4854397633a35af33840a5 [12/14] powerpc/603: Switch r0 and r3 in TLB miss handlers https://git.kernel.org/powerpc/c/31c0e137ec609f36877ea39cd343ef2476d080aa [13/14] powerpc/603: Inconditionally use task PGDIR in ITLB misses https://git.kernel.org/powerpc/c/3f57d90c231d3329aaed7079dd05b5a2f7692a58 [14/14] powerpc/603: Inconditionally use task PGDIR in DTLB misses https://git.kernel.org/powerpc/c/062e825a336017c0334c7497690826c95aa1a84f cheers