# git rev-parse -q --verify 950b07c14e8c59444e2359f15fd70ed5112e11a0^{commit} 950b07c14e8c59444e2359f15fd70ed5112e11a0 already have revision, skipping fetch # git checkout -q -f -B kisskb 950b07c14e8c59444e2359f15fd70ed5112e11a0 # git clean -qxdf # < git log -1 # commit 950b07c14e8c59444e2359f15fd70ed5112e11a0 # Author: Linus Torvalds # Date: Sat Sep 7 14:25:54 2019 -0700 # # Revert "x86/apic: Include the LDR when clearing out APIC registers" # # This reverts commit 558682b5291937a70748d36fd9ba757fb25b99ae. # # Chris Wilson reports that it breaks his CPU hotplug test scripts. In # particular, it breaks offlining and then re-onlining the boot CPU, which # we treat specially (and the BIOS does too). # # The symptoms are that we can offline the CPU, but it then does not come # back online again: # # smpboot: CPU 0 is now offline # smpboot: Booting Node 0 Processor 0 APIC 0x0 # smpboot: do_boot_cpu failed(-1) to wakeup CPU#0 # # Thomas says he knows why it's broken (my personal suspicion: our magic # handling of the "cpu0_logical_apicid" thing), but for 5.3 the right fix # is to just revert it, since we've never touched the LDR bits before, and # it's not worth the risk to do anything else at this stage. # # [ Hotpluging of the boot CPU is special anyway, and should be off by # default. See the "BOOTPARAM_HOTPLUG_CPU0" config option and the # cpu0_hotplug kernel parameter. # # In general you should not do it, and it has various known limitations # (hibernate and suspend require the boot CPU, for example). # # But it should work, even if the boot CPU is special and needs careful # treatment - Linus ] # # Link: https://lore.kernel.org/lkml/156785100521.13300.14461504732265570003@skylake-alporthouse-com/ # Reported-by: Chris Wilson # Acked-by: Thomas Gleixner # Cc: Bandan Das # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 950b07c14e8c59444e2359f15fd70ed5112e11a0 # < make -s -j 120 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_SAMPLES=n # yes \n | make -s -j 120 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- oldconfig yes: standard output: Broken pipe # make -s -j 120 ARCH=x86 O=/kisskb/build/linus_x86-allmodconfig_x86_64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/x86_64-linux/bin/x86_64-linux- Completed OK # rm -rf /kisskb/build/linus_x86-allmodconfig_x86_64-gcc8 # Build took: 0:13:19.824428