New issue
Advanced search Search tips

Issue 810185 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Merge v4.14.18 into chromeos-4.14

Project Member Reported by groeck@chromium.org, Feb 7 2018

Issue description

Merge v4.14.18 into chromeos-4.14

 
Labels: OS-Chrome
Project Member

Comment 2 by bugdroid1@chromium.org, Feb 9 2018

Labels: merge-merged-chromeos-4.14
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/b5383e7311bc6c1fde0aa3584fa85fca62998d50

commit b5383e7311bc6c1fde0aa3584fa85fca62998d50
Author: Guenter Roeck <groeck@chromium.org>
Date: Fri Feb 09 03:43:50 2018

Revert "CHROMIUM: Revert "objtool: Allow alternatives to be ignored""

This reverts commit e9eb28165cd73ba2355d77cd14d9d63869123073.

Upstream stable release v4.14.18 fixes the problem we avoided by reverting
the original patch. The problem was only seen in chromeos-4.14 if retpoline
support was enabled through KCFLAGS. This is no longer the case (retpoline
support is now enabled with CONFIG_RETPOLINE), thus it is safe to restore
the original patch. This is a prerequisite for the merge of v4.14.18.

BUG= chromium:800667 ,  chromium:802348 ,  chromium:810185 
TEST=Build and run on affected system running chromeos-4.14

Change-Id: I010644f9f84d50d24c733147a754919a1ed8515f
Signed-off-by: Guenter Roeck <groeck@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/908532
Reviewed-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
Reviewed-by: Dylan Reid <dgreid@chromium.org>

[modify] https://crrev.com/b5383e7311bc6c1fde0aa3584fa85fca62998d50/tools/objtool/check.c
[modify] https://crrev.com/b5383e7311bc6c1fde0aa3584fa85fca62998d50/tools/objtool/check.h

Project Member

Comment 3 by bugdroid1@chromium.org, Feb 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/13117e46bc65628ab4f2ad686ac46d9d41db1a4d

commit 13117e46bc65628ab4f2ad686ac46d9d41db1a4d
Author: Guenter Roeck <groeck@chromium.org>
Date: Fri Feb 09 15:39:22 2018

CHROMIUM: Merge 'v4.14.18' into chromeos-4.14

Merge of v4.14.18 into chromeos-4.14

Conflicts:
    arch/x86/include/asm/thread_info.h
    arch/x86/entry/entry_64.S

Changelog:
----------------------------------------------------------------
Andi Kleen (1):
      module/retpoline: Warn about missing retpoline in module

Andy Lutomirski (3):
      x86/entry/64: Remove the SYSCALL64 fast path
      x86/entry/64: Push extra regs right away
      x86/asm: Move 'status' from thread_struct to thread_info

Arnd Bergmann (1):
      x86/pti: Mark constant arrays as __initconst

Ashok Raj (1):
      KVM/x86: Add IBPB support

Borislav Petkov (5):
      x86/alternative: Print unadorned pointers
      x86/nospec: Fix header guards names
      x86/bugs: Drop one "mitigation" from dmesg
      x86/retpoline: Simplify vmexit_fill_RSB()
      x86/speculation: Simplify indirect_branch_prediction_barrier()

Colin Ian King (1):
      x86/spectre: Fix spelling mistake: "vunerable"-> "vulnerable"

Dan Williams (12):
      array_index_nospec: Sanitize speculative array de-references
      x86: Implement array_index_mask_nospec
      x86: Introduce barrier_nospec
      x86: Introduce __uaccess_begin_nospec() and uaccess_try_nospec
      x86/usercopy: Replace open coded stac/clac with __uaccess_{begin, end}
      x86/uaccess: Use __uaccess_begin_nospec() and uaccess_try_nospec
      x86/get_user: Use pointer masking to limit speculation
      x86/syscall: Sanitize syscall table de-references under speculation
      vfs, fdtable: Prevent bounds-check bypass via speculative execution
      nl80211: Sanitize array index in parse_txq_params
      x86/spectre: Report get_user mitigation for spectre_v1
      x86/kvm: Update spectre-v1 mitigation

Darren Kenny (1):
      x86/speculation: Fix typo IBRS_ATT, which should be IBRS_ALL

David Woodhouse (10):
      x86/cpufeatures: Add CPUID_7_EDX CPUID leaf
      x86/cpufeatures: Add Intel feature bits for Speculation Control
      x86/cpufeatures: Add AMD feature bits for Speculation Control
      x86/msr: Add definitions for new speculation control MSRs
      x86/pti: Do not enable PTI on CPUs which are not vulnerable to Meltdown
      x86/cpufeature: Blacklist SPEC_CTRL/PRED_CMD on early Spectre v2 microcodes
      x86/speculation: Add basic IBPB (Indirect Branch Prediction Barrier) support
      x86/cpufeatures: Clean up Spectre v2 related CPUID flags
      x86/cpuid: Fix up "virtual" IBRS/IBPB/STIBP feature bits on Intel
      x86/retpoline: Avoid retpolines for built-in __init functions

Dou Liyang (1):
      x86/spectre: Check CONFIG_RETPOLINE in command line parser

Greg Kroah-Hartman (1):
      Linux 4.14.18

Guenter Roeck (1):
      Merge remote-tracking branch 'origin/linux/v4.14.18' into merge/chromeos-4.14-v4.14.18

Ian Abbott (1):
      fpga: region: release of_parse_phandle nodes after use

Jesse Chan (3):
      auxdisplay: img-ascii-lcd: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE
      pinctrl: pxa: pxa2xx: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE
      ASoC: pcm512x: add missing MODULE_DESCRIPTION/AUTHOR/LICENSE

Jim Mattson (1):
      KVM: nVMX: Eliminate vmcs02 pool

Josh Poimboeuf (4):
      objtool: Improve retpoline alternative handling
      objtool: Add support for alternatives at the end of a section
      objtool: Warn on stripped section symbol
      x86/paravirt: Remove 'noreplace-paravirt' cmdline option

KarimAllah Ahmed (5):
      x86/spectre: Simplify spectre_v2 command line parsing
      KVM/x86: Update the reverse_cpuid list to include CPUID_7_EDX
      KVM/VMX: Emulate MSR_IA32_ARCH_CAPABILITIES
      KVM/VMX: Allow direct access to MSR_IA32_SPEC_CTRL
      KVM/SVM: Allow direct access to MSR_IA32_SPEC_CTRL

Linus Walleij (1):
      iio: adc/accel: Fix up module licenses

Liu, Changcheng (1):
      scripts/faddr2line: fix CROSS_COMPILE unset error

Mark Rutland (1):
      Documentation: Document array_index_nospec

Michael Ellerman (2):
      powerpc/64s: Wire up cpu_show_meltdown()
      powerpc/64s: Allow control of RFI flush via debugfs

Paolo Bonzini (2):
      KVM: VMX: introduce alloc_loaded_vmcs
      KVM: VMX: make MSR bitmaps per-VCPU

Peter Zijlstra (2):
      KVM: x86: Make indirect calls in emulator speculation safe
      KVM: VMX: Make indirect call speculation safe

Sebastian Andrzej Siewior (1):
      serial: core: mark port as initialized after successful IRQ change

Thomas Gleixner (1):
      x86/cpu/bugs: Make retpoline module warning conditional

Tim Chen (1):
      x86/speculation: Use Indirect Branch Prediction Barrier in context switch

Waiman Long (1):
      x86/retpoline: Remove the esp/rsp thunk

William Grant (1):
      x86/mm: Fix overlap of i386 CPU_ENTRY_AREA with FIX_BTMAP

 Documentation/admin-guide/kernel-parameters.txt |   2 -
 Documentation/speculation.txt                   |  90 ++++
 Makefile                                        |   2 +-
 arch/powerpc/Kconfig                            |   1 +
 arch/powerpc/kernel/setup_64.c                  |  38 ++
 arch/x86/entry/common.c                         |   9 +-
 arch/x86/entry/entry_32.S                       |   3 +-
 arch/x86/entry/entry_64.S                       | 156 +-----
 arch/x86/entry/syscall_64.c                     |   7 +-
 arch/x86/include/asm/asm-prototypes.h           |   4 +-
 arch/x86/include/asm/barrier.h                  |  28 +
 arch/x86/include/asm/cpufeature.h               |   7 +-
 arch/x86/include/asm/cpufeatures.h              |  22 +-
 arch/x86/include/asm/disabled-features.h        |   3 +-
 arch/x86/include/asm/fixmap.h                   |   6 +-
 arch/x86/include/asm/msr-index.h                |  12 +
 arch/x86/include/asm/msr.h                      |   3 +-
 arch/x86/include/asm/nospec-branch.h            |  86 +--
 arch/x86/include/asm/pgtable_32_types.h         |   5 +-
 arch/x86/include/asm/processor.h                |   5 +-
 arch/x86/include/asm/required-features.h        |   3 +-
 arch/x86/include/asm/syscall.h                  |   6 +-
 arch/x86/include/asm/thread_info.h              |   3 +-
 arch/x86/include/asm/tlbflush.h                 |   2 +
 arch/x86/include/asm/uaccess.h                  |  15 +-
 arch/x86/include/asm/uaccess_32.h               |   6 +-
 arch/x86/include/asm/uaccess_64.h               |  12 +-
 arch/x86/kernel/alternative.c                   |  28 +-
 arch/x86/kernel/cpu/bugs.c                      | 134 +++--
 arch/x86/kernel/cpu/common.c                    |  70 ++-
 arch/x86/kernel/cpu/intel.c                     |  66 +++
 arch/x86/kernel/cpu/scattered.c                 |   2 -
 arch/x86/kernel/process_64.c                    |   4 +-
 arch/x86/kernel/ptrace.c                        |   2 +-
 arch/x86/kernel/signal.c                        |   2 +-
 arch/x86/kvm/cpuid.c                            |  22 +-
 arch/x86/kvm/cpuid.h                            |   1 +
 arch/x86/kvm/emulate.c                          |   9 +-
 arch/x86/kvm/svm.c                              | 116 +++++
 arch/x86/kvm/vmx.c                              | 660 ++++++++++++++----------
 arch/x86/kvm/x86.c                              |   1 +
 arch/x86/lib/Makefile                           |   1 +
 arch/x86/lib/getuser.S                          |  10 +
 arch/x86/lib/retpoline.S                        |  57 +-
 arch/x86/lib/usercopy_32.c                      |   8 +-
 arch/x86/mm/tlb.c                               |  33 +-
 drivers/auxdisplay/img-ascii-lcd.c              |   4 +
 drivers/fpga/fpga-region.c                      |  13 +-
 drivers/iio/accel/kxsd9-i2c.c                   |   3 +
 drivers/iio/adc/qcom-vadc-common.c              |   4 +
 drivers/pinctrl/pxa/pinctrl-pxa2xx.c            |   4 +
 drivers/tty/serial/serial_core.c                |   2 +
 include/linux/fdtable.h                         |   5 +-
 include/linux/init.h                            |   9 +-
 include/linux/module.h                          |   9 +
 include/linux/nospec.h                          |  72 +++
 kernel/module.c                                 |  11 +
 net/wireless/nl80211.c                          |   9 +-
 scripts/faddr2line                              |   8 +-
 scripts/mod/modpost.c                           |   9 +
 sound/soc/codecs/pcm512x-spi.c                  |   4 +
 tools/objtool/check.c                           |  89 ++--
 tools/objtool/orc_gen.c                         |   5 +
 63 files changed, 1354 insertions(+), 668 deletions(-)
 create mode 100644 Documentation/speculation.txt
 create mode 100644 include/linux/nospec.h

BUG= chromium:810185 
TEST=Build and test on various affected systems

Change-Id: I0f3fe75b744fb6564bef1b9a94042ad468a6ce6a
Signed-off-by: Guenter Roeck <groeck@chromium.org>

[modify] https://crrev.com/13117e46bc65628ab4f2ad686ac46d9d41db1a4d/arch/x86/entry/entry_64.S
[modify] https://crrev.com/13117e46bc65628ab4f2ad686ac46d9d41db1a4d/arch/x86/include/asm/thread_info.h

Comment 4 by groeck@chromium.org, Feb 11 2018

Status: Fixed (was: Assigned)

Sign in to add a comment