# git rev-parse -q --verify 1a2a76c2685a29e46d7b37e752ccea7b15aa8e24^{commit} 1a2a76c2685a29e46d7b37e752ccea7b15aa8e24 already have revision, skipping fetch # git checkout -q -f -B kisskb 1a2a76c2685a29e46d7b37e752ccea7b15aa8e24 # git clean -qxdf # < git log -1 # commit 1a2a76c2685a29e46d7b37e752ccea7b15aa8e24 # Merge: f41377609a72 0f378d73d429 # Author: Linus Torvalds # Date: Sun Feb 9 12:11:12 2020 -0800 # # Merge tag 'x86-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip # # Pull x86 fixes from Thomas Gleixner: # "A set of fixes for X86: # # - Ensure that the PIT is set up when the local APIC is disable or # configured in legacy mode. This is caused by an ordering issue # introduced in the recent changes which skip PIT initialization when # the TSC and APIC frequencies are already known. # # - Handle malformed SRAT tables during early ACPI parsing which caused # an infinite loop anda boot hang. # # - Fix a long standing race in the affinity setting code which affects # PCI devices with non-maskable MSI interrupts. The problem is caused # by the non-atomic writes of the MSI address (destination APIC id) # and data (vector) fields which the device uses to construct the MSI # message. The non-atomic writes are mandated by PCI. # # If both fields change and the device raises an interrupt after # writing address and before writing data, then the MSI block # constructs a inconsistent message which causes interrupts to be # lost and subsequent malfunction of the device. # # The fix is to redirect the interrupt to the new vector on the # current CPU first and then switch it over to the new target CPU. # This allows to observe an eventually raised interrupt in the # transitional stage (old CPU, new vector) to be observed in the APIC # IRR and retriggered on the new target CPU and the new vector. # # The potential spurious interrupts caused by this are harmless and # can in the worst case expose a buggy driver (all handlers have to # be able to deal with spurious interrupts as they can and do happen # for various reasons). # # - Add the missing suspend/resume mechanism for the HYPERV hypercall # page which prevents resume hibernation on HYPERV guests. This # change got lost before the merge window. # # - Mask the IOAPIC before disabling the local APIC to prevent # potentially stale IOAPIC remote IRR bits which cause stale # interrupt lines after resume" # # * tag 'x86-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: # x86/apic: Mask IOAPIC entries when disabling the local APIC # x86/hyperv: Suspend/resume the hypercall page for hibernation # x86/apic/msi: Plug non-maskable MSI affinity race # x86/boot: Handle malformed SRAT tables during early ACPI parsing # x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-ld --version # < git log --format=%s --max-count=1 1a2a76c2685a29e46d7b37e752ccea7b15aa8e24 # < make -s -j 48 ARCH=arm O=/kisskb/build/linus_trizeps4_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- trizeps4_defconfig # make -s -j 48 ARCH=arm O=/kisskb/build/linus_trizeps4_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- Completed OK # rm -rf /kisskb/build/linus_trizeps4_defconfig_arm-gcc4.9 # Build took: 0:01:18.631783