# git rev-parse -q --verify 3fe3a16489c3d45bdd9d5a7e2d13f2fbbd236cbf^{commit} 3fe3a16489c3d45bdd9d5a7e2d13f2fbbd236cbf already have revision, skipping fetch # git checkout -q -f -B kisskb 3fe3a16489c3d45bdd9d5a7e2d13f2fbbd236cbf # git clean -qxdf # < git log -1 # commit 3fe3a16489c3d45bdd9d5a7e2d13f2fbbd236cbf # Author: Christophe Leroy # Date: Mon Aug 15 21:48:40 2022 +1000 # # powerpc/code-patching: Speed up page mapping/unmapping # # Since commit 591b4b268435 ("powerpc/code-patching: Pre-map patch area") # the patch area is premapped so intermediate page tables are already # allocated. # # Use __set_pte_at() directly instead of the heavy map_kernel_page(), # at for unmapping just do a pte_clear() followed by a flush. # # __set_pte_at() can be used directly without the filters in # set_pte_at() because we are mapping a normal page non executable. # # Make sure gcc knows text_poke_area is page aligned in order to # optimise the flush. # # This change reduces by 66% the time needed to activate ftrace on # an 8xx (588000 tb ticks instead of 1744000). # # Signed-off-by: Christophe Leroy # [mpe: Add ptesync needed on radix to avoid spurious fault] # Signed-off-by: Michael Ellerman # Signed-off-by: Michael Ellerman # Link: https://lore.kernel.org/r/20220815114840.1468656-1-mpe@ellerman.id.au # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 3fe3a16489c3d45bdd9d5a7e2d13f2fbbd236cbf # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_ep8248e_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ep8248e_defconfig # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_ep8248e_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_ep8248e_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next_ep8248e_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- Completed OK # rm -rf /kisskb/build/powerpc-next_ep8248e_defconfig_powerpc-gcc5 # Build took: 0:01:14.533183