# git rev-parse -q --verify e07c9d18da02a4312609819bbc4e59c37108b8e6^{commit} e07c9d18da02a4312609819bbc4e59c37108b8e6 already have revision, skipping fetch # git checkout -q -f -B kisskb e07c9d18da02a4312609819bbc4e59c37108b8e6 # git clean -qxdf # < git log -1 # commit e07c9d18da02a4312609819bbc4e59c37108b8e6 # Author: Michael Ellerman # Date: Wed Oct 25 12:24:52 2023 +1100 # # powerpc: Make cpu_spec __ro_after_init # # The cpu_spec is a struct holding various information about the CPU the # kernel is executing on. It's populated early in boot and must not change # after that. # # In particular the cpu_features and mmu_features hold the set of # discovered CPU/MMU features and are used to set static keys for each # feature, and do binary patching of assembly. So any change to the # cpu_features/mmu_features later in boot will not be reflected in # the state of the static keys or patched code. # # There is already logic to check that cpu_features/mmu_features don't # change, see check_features() in feature-fixups.c. # # But as another layer of protection the entire cpu_spec should be read # only after init, annotate it as such. # # Signed-off-by: Michael Ellerman # Link: https://msgid.link/20231025012452.1985680-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 e07c9d18da02a4312609819bbc4e59c37108b8e6 # make -s -j 160 ARCH=powerpc O=/kisskb/build/powerpc-next_44x_iss476-smp_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- 44x/iss476-smp_defconfig WARNING: unmet direct dependencies detected for HOTPLUG_CPU Depends on [n]: SMP [=y] && (PPC_PSERIES [=n] || PPC_PMAC [=n] || PPC_POWERNV [=n] || FSL_SOC_BOOKE [=n]) Selected by [y]: - PM_SLEEP_SMP [=y] && SMP [=y] && (ARCH_SUSPEND_POSSIBLE [=y] || ARCH_HIBERNATION_POSSIBLE [=y]) && PM_SLEEP [=y] WARNING: unmet direct dependencies detected for HOTPLUG_CPU Depends on [n]: SMP [=y] && (PPC_PSERIES [=n] || PPC_PMAC [=n] || PPC_POWERNV [=n] || FSL_SOC_BOOKE [=n]) Selected by [y]: - PM_SLEEP_SMP [=y] && SMP [=y] && (ARCH_SUSPEND_POSSIBLE [=y] || ARCH_HIBERNATION_POSSIBLE [=y]) && PM_SLEEP [=y] # < make -s -j 160 ARCH=powerpc O=/kisskb/build/powerpc-next_44x_iss476-smp_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 160 ARCH=powerpc O=/kisskb/build/powerpc-next_44x_iss476-smp_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig WARNING: unmet direct dependencies detected for HOTPLUG_CPU Depends on [n]: SMP [=y] && (PPC_PSERIES [=n] || PPC_PMAC [=n] || PPC_POWERNV [=n] || FSL_SOC_BOOKE [=n]) Selected by [y]: - PM_SLEEP_SMP [=y] && SMP [=y] && (ARCH_SUSPEND_POSSIBLE [=y] || ARCH_HIBERNATION_POSSIBLE [=y]) && PM_SLEEP [=y] WARNING: unmet direct dependencies detected for HOTPLUG_CPU Depends on [n]: SMP [=y] && (PPC_PSERIES [=n] || PPC_PMAC [=n] || PPC_POWERNV [=n] || FSL_SOC_BOOKE [=n]) Selected by [y]: - PM_SLEEP_SMP [=y] && SMP [=y] && (ARCH_SUSPEND_POSSIBLE [=y] || ARCH_HIBERNATION_POSSIBLE [=y]) && PM_SLEEP [=y] # make -s -j 160 ARCH=powerpc O=/kisskb/build/powerpc-next_44x_iss476-smp_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_44x_iss476-smp_defconfig_powerpc-gcc5 # Build took: 0:00:42.984158