This is a note to let you know that I've just added the patch titled [PATCH] Revert "x86/entry/64: Add missing irqflags tracing to to the 4.9-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: revert-x86-entry-64-add-missing-irqflags-tracing-to.patch and it can be found in the queue-4.9 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 0ed6c0c778e67f00978a778612862441e48cc529 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Date: Mon, 4 Dec 2017 12:59:57 +0100 Subject: [PATCH] Revert "x86/entry/64: Add missing irqflags tracing to native_load_gs_index()" This reverts commit 0d794d0d018f23fb09c50f6ae26868bd6ae343d6 which is commit 0d794d0d018f23fb09c50f6ae26868bd6ae343d6 upstream. Andy writes: I think the thing to do is to revert the patch from -stable. The bug it fixes is very minor, and the regression is that it made a pre-existing bug in some nearly-undebuggable core resume code much easier to hit. I don't feel comfortable with a backport of the latter fix until it has a good long soak in Linus' tree. Reported-by: Andy Lutomirski <luto@xxxxxxxxxx> Cc: Borislav Petkov <bpetkov@xxxxxxx> Cc: Brian Gerst <brgerst@xxxxxxxxx> Cc: Dave Hansen <dave.hansen@xxxxxxxxx> Cc: Josh Poimboeuf <jpoimboe@xxxxxxxxxx> Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- arch/x86/entry/entry_64.S | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S index be9df513141e..e7b0e7ff4c58 100644 --- a/arch/x86/entry/entry_64.S +++ b/arch/x86/entry/entry_64.S @@ -54,19 +54,15 @@ ENTRY(native_usergs_sysret64) ENDPROC(native_usergs_sysret64) #endif /* CONFIG_PARAVIRT */ -.macro TRACE_IRQS_FLAGS flags:req +.macro TRACE_IRQS_IRETQ #ifdef CONFIG_TRACE_IRQFLAGS - bt $9, \flags /* interrupts off? */ + bt $9, EFLAGS(%rsp) /* interrupts off? */ jnc 1f TRACE_IRQS_ON 1: #endif .endm -.macro TRACE_IRQS_IRETQ - TRACE_IRQS_FLAGS EFLAGS(%rsp) -.endm - /* * When dynamic function tracer is enabled it will add a breakpoint * to all locations that it is about to modify, sync CPUs, update @@ -872,13 +868,11 @@ idtentry simd_coprocessor_error do_simd_coprocessor_error has_error_code=0 ENTRY(native_load_gs_index) pushfq DISABLE_INTERRUPTS(CLBR_ANY & ~CLBR_RDI) - TRACE_IRQS_OFF SWAPGS .Lgs_change: movl %edi, %gs 2: ALTERNATIVE "", "mfence", X86_BUG_SWAPGS_FENCE SWAPGS - TRACE_IRQS_FLAGS (%rsp) popfq ret END(native_load_gs_index) -- 2.15.1 Patches currently in stable-queue which might be from gregkh@xxxxxxxxxxxxxxxxxxx are queue-4.9/nvme-pci-add-quirk-for-delay-before-chk-rdy-for-wdc-sn200.patch queue-4.9/mfd-twl4030-power-fix-pmic-for-boards-that-need-vmmc1-on-reboot.patch queue-4.9/i2c-i801-fix-failed-to-allocate-irq-2147483648-error.patch queue-4.9/drm-amd-pp-fix-typecast-error-in-powerplay.patch queue-4.9/drm-panel-simple-add-missing-panel_simple_unprepare-calls.patch queue-4.9/mm-hugetlbfs-introduce-split-to-vm_operations_struct.patch queue-4.9/mmc-core-do-not-leave-the-block-driver-in-a-suspended-state.patch queue-4.9/kvm-lapic-fixup-ldr-on-load-in-x2apic.patch queue-4.9/arm-omap2-fix-wl1283-bluetooth-baud-rate.patch queue-4.9/kvm-x86-inject-exceptions-produced-by-x86_decode_insn.patch queue-4.9/drm-hisilicon-ensure-ldi-regs-are-properly-configured.patch queue-4.9/bcache-fix-building-error-on-mips.patch queue-4.9/nfsd-fix-stateid-races-between-open-and-close.patch queue-4.9/drm-ttm-once-more-fix-ttm_buffer_object_transfer.patch queue-4.9/revert-x86-entry-64-add-missing-irqflags-tracing-to.patch queue-4.9/drm-amdgpu-potential-uninitialized-variable-in-amdgpu_vce_ring_parse_cs.patch queue-4.9/drm-radeon-fix-atombios-on-big-endian.patch queue-4.9/eeprom-at24-fix-reading-from-24mac402-24mac602.patch queue-4.9/hwmon-jc42-optionally-try-to-disable-the-smbus-timeout.patch queue-4.9/kvm-x86-exit-to-user-mode-on-ud-intercept-when-emulator-requires.patch queue-4.9/eeprom-at24-check-at24_read-write-arguments.patch queue-4.9/kvm-lapic-split-out-x2apic-ldr-calculation.patch queue-4.9/mmc-core-prepend-0x-to-ocr-entry-in-sysfs.patch queue-4.9/nfs-revalidate-.-etc-correctly-on-open.patch queue-4.9/nfsd-fix-panic-in-posix_unblock_lock-called-from-nfs4_laundromat.patch queue-4.9/kvm-x86-pvclock-handle-first-time-write-to-pvclock-page-contains-random-junk.patch queue-4.9/drm-amdgpu-potential-uninitialized-variable-in-amdgpu_vm_update_directories.patch queue-4.9/nfsd-fix-another-open-stateid-race.patch queue-4.9/btrfs-clear-space-cache-inode-generation-always.patch queue-4.9/eeprom-at24-correctly-set-the-size-for-at24mac402.patch queue-4.9/arm-dts-omap3-logicpd-torpedo-37xx-devkit-fix-mmc1-cd-gpio.patch queue-4.9/mm-cma-fix-alloc_contig_range-ret-code-potential-leak.patch queue-4.9/mm-thp-do-not-make-page-table-dirty-unconditionally-in-touch_pd.patch queue-4.9/revert-drm-radeon-dont-switch-vt-on-suspend.patch queue-4.9/arm-dts-logicpd-torpedo-fix-camera-pin-mux.patch queue-4.9/mm-madvise.c-fix-madvise-infinite-loop-under-special-circumstances.patch