# 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/br-sparc64-full-2016.08-613-ge98b4dd/bin/sparc64-linux-gcc --version # < /opt/cross/kisskb/br-sparc64-full-2016.08-613-ge98b4dd/bin/sparc64-linux-ld --version # < git log --format=%s --max-count=1 950b07c14e8c59444e2359f15fd70ed5112e11a0 # < make -s -j 48 ARCH=sparc64 O=/kisskb/build/linus_sparc64-allmodconfig_sparc64 CROSS_COMPILE=/opt/cross/kisskb/br-sparc64-full-2016.08-613-ge98b4dd/bin/sparc64-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_HAVE_FTRACE_MCOUNT_RECORD=n # Added to kconfig CONFIG_SAMPLES=n # Added to kconfig CONFIG_MODULE_SIG=n # yes \n | make -s -j 48 ARCH=sparc64 O=/kisskb/build/linus_sparc64-allmodconfig_sparc64 CROSS_COMPILE=/opt/cross/kisskb/br-sparc64-full-2016.08-613-ge98b4dd/bin/sparc64-linux- oldconfig yes: standard output: Broken pipe # make -s -j 48 ARCH=sparc64 O=/kisskb/build/linus_sparc64-allmodconfig_sparc64 CROSS_COMPILE=/opt/cross/kisskb/br-sparc64-full-2016.08-613-ge98b4dd/bin/sparc64-linux- :1511:2: warning: #warning syscall clone3 not implemented [-Wcpp] /kisskb/src/fs/cifs/smb2pdu.c: In function 'SMB2_ioctl_init': /kisskb/src/fs/cifs/smb2pdu.c:2676:19: warning: 'in_data_buf' may be used uninitialized in this function [-Wmaybe-uninitialized] iov[1].iov_base = in_data_buf; ^ /kisskb/src/drivers/input/joystick/analog.c:160:2: warning: #warning Precise timer not defined for this architecture. [-Wcpp] #warning Precise timer not defined for this architecture. ^ /kisskb/src/drivers/i2c/busses/i2c-sh_mobile.c: In function 'sh_mobile_i2c_isr': /kisskb/src/drivers/i2c/busses/i2c-sh_mobile.c:399:26: warning: 'data' may be used uninitialized in this function [-Wmaybe-uninitialized] pd->msg->buf[real_pos] = data; ^ /kisskb/src/drivers/i2c/busses/i2c-sh_mobile.c:372:16: note: 'data' was declared here unsigned char data; ^ In file included from /kisskb/src/include/linux/wait.h:9:0, from /kisskb/src/include/linux/net.h:19, from /kisskb/src/drivers/infiniband/sw/siw/siw_qp_rx.c:8: /kisskb/src/drivers/infiniband/sw/siw/siw_qp_rx.c: In function 'siw_proc_send': /kisskb/src/include/linux/spinlock.h:288:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized] _raw_spin_unlock_irqrestore(lock, flags); \ ^ /kisskb/src/drivers/infiniband/sw/siw/siw_qp_rx.c:335:16: note: 'flags' was declared here unsigned long flags; ^ /kisskb/src/drivers/soundwire/slave.c:16:12: warning: 'sdw_slave_add' defined but not used [-Wunused-function] static int sdw_slave_add(struct sdw_bus *bus, ^ In file included from /kisskb/src/include/linux/rwsem.h:16:0, from /kisskb/src/include/linux/notifier.h:15, from /kisskb/src/include/linux/clk.h:14, from /kisskb/src/drivers/tty/serial/sh-sci.c:24: /kisskb/src/drivers/tty/serial/sh-sci.c: In function 'sci_dma_rx_submit': /kisskb/src/include/linux/spinlock.h:288:3: warning: 'flags' may be used uninitialized in this function [-Wmaybe-uninitialized] _raw_spin_unlock_irqrestore(lock, flags); \ ^ /kisskb/src/drivers/tty/serial/sh-sci.c:1353:16: note: 'flags' was declared here unsigned long flags; ^ kernel: arch/sparc/boot/image is ready kernel: arch/sparc/boot/zImage is ready warning: same module names found: drivers/char/adi.ko drivers/input/joystick/adi.ko Completed OK # rm -rf /kisskb/build/linus_sparc64-allmodconfig_sparc64 # Build took: 0:13:03.437474