Public bug reported:

SRU Justification

    Impact:
       The upstream process for stable tree updates is quite similar
       in scope to the Ubuntu SRU process, e.g., each patch has to
       demonstrably fix a bug, and each patch is vetted by upstream
       by originating either directly from a mainline/stable Linux tree or
       a minimally backported form of that patch. The v4.14.9 upstream stable
       patch set is now available. It should be included in the Ubuntu
       kernel as well.

       git://git.kernel.org/

    TEST CASE: TBD

       The following patches from the v4.14.9 stable release shall be
applied:

x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates
objtool: Don't report end of section error after an empty unwind hint
x86/head: Remove confusing comment
x86/head: Remove unused 'bad_address' code
x86/head: Fix head ELF function annotations
x86/boot: Annotate verify_cpu() as a callable function
x86/xen: Fix xen head ELF annotations
x86/xen: Add unwind hint annotations
x86/head: Add unwind hint annotations
ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq()
x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig
x86/fpu/debug: Remove unused 'x86_fpu_state' and 'x86_fpu_deactivate_state' 
tracepoints
x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*'
x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit
bitops: Add clear/set_bit32() to linux/bitops.h
x86/cpuid: Add generic table for CPUID dependencies
x86/fpu: Parse clearcpuid= as early XSAVE argument
x86/fpu: Make XSAVE check the base CPUID features before enabling
x86/fpu: Remove the explicit clearing of XSAVE dependent features
x86/platform/UV: Convert timers to use timer_setup()
objtool: Print top level commands on incorrect usage
x86/cpuid: Prevent out of bound access in do_clear_cpu_cap()
mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
x86/kasan: Use the same shadow offset for 4- and 5-level paging
x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and 
CONFIG_XEN_PVH=y
x86/xen: Drop 5-level paging support code from the XEN_PV code
ACPI / APEI: remove the unused dead-code for SEA/NMI notification type
x86/asm: Don't use the confusing '.ifeq' directive
x86/build: Beautify build log of syscall headers
x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 
'nr_pages'
x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features
x86/mm: Relocate page fault error codes to traps.h
x86/boot: Relocate definition of the initial state of CR0
ptrace,x86: Make user_64bit_mode() available to 32-bit builds
x86/entry/64: Remove the restore_c_regs_and_iret label
x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths
x86/entry/64: Move SWAPGS into the common IRET-to-usermode path
x86/entry/64: Simplify reg restore code in the standard IRET paths
x86/entry/64: Shrink paranoid_exit_restore and make labels local
x86/entry/64: Use pop instead of movq in syscall_return_via_sysret
x86/entry/64: Merge the fast and slow SYSRET paths
x86/entry/64: Use POP instead of MOV to restore regs on NMI return
x86/entry/64: Remove the RESTORE_..._REGS infrastructure
xen, x86/entry/64: Add xen NMI trap entry
x86/entry/64: De-Xen-ify our NMI code
x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of native_load_sp0()
x86/entry/64: Pass SP0 directly to load_sp0()
x86/entry: Add task_top_of_stack() to find the top of a task's stack
x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context()
x86/entry/64: Stop initializing TSS.sp0 at boot
x86/entry/64: Remove all remaining direct thread_struct::sp0 reads
x86/entry/32: Fix cpu_current_top_of_stack initialization at boot
x86/entry/64: Remove thread_struct::sp0
x86/traps: Use a new on_thread_stack() helper to clean up an assertion
x86/entry/64: Shorten TEST instructions
x86/cpuid: Replace set/clear_bit32()
bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to linux/bitops.h")
x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE
x86/cpufeatures: Re-tabulate the X86_FEATURE definitions
x86/cpufeatures: Fix various details in the feature definitions
selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area()
selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as well
ACPI / APEI: Replace ioremap_page_range() with fixmap
x86/virt, x86/platform: Merge 'struct x86_hyper' into 'struct x86_platform' and 
'struct x86_init'
x86/virt: Add enum for hypervisors to replace x86_hyper
drivers/misc/intel/pti: Rename the header file to free up the namespace
x86/cpufeature: Add User-Mode Instruction Prevention definitions
x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD
perf/x86: Enable free running PEBS for REGS_USER/INTR
bpf: fix build issues on um due to mising bpf_perf_event.h
locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE()
locking/barriers: Convert users of lockless_dereference() to READ_ONCE()
x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow
x86/entry/64/paravirt: Use paravirt-safe macro to access eflags
x86/unwinder/orc: Dont bail on stack overflow
x86/unwinder: Handle stack overflows more gracefully
x86/irq: Remove an old outdated comment about context tracking races
x86/irq/64: Print the offending IP in the stack overflow warning
x86/entry/64: Allocate and enable the SYSENTER stack
x86/dumpstack: Add get_stack_info() support for the SYSENTER stack
x86/entry/gdt: Put per-CPU GDT remaps in ascending order
x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct 
cpu_entry_area
x86/kasan/64: Teach KASAN about the cpu_entry_area
x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss
x86/dumpstack: Handle stack overflow on all stacks
x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct
x86/entry: Remap the TSS into the CPU entry area
x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0
x86/espfix/64: Stop assuming that pt_regs is on the entry stack
x86/entry/64: Use a per-CPU trampoline stack for IDT entries
x86/entry/64: Return to userspace from the trampoline stack
x86/entry/64: Create a per-CPU SYSCALL entry trampoline
x86/entry/64: Move the IST stacks into struct cpu_entry_area
x86/entry/64: Remove the SYSENTER stack canary
x86/entry: Clean up the SYSENTER_stack code
x86/entry/64: Make cpu_entry_area.tss read-only
x86/paravirt: Dont patch flush_tlb_single
x86/paravirt: Provide a way to check for hypervisors
x86/cpufeatures: Make CPU bugs sticky
optee: fix invalid of_node_put() in optee_driver_init()
backlight: pwm_bl: Fix overflow condition
drm: Add retries for lspcon mode detection
clk: sunxi-ng: nm: Check if requested rate is supported by fractional clock
clk: sunxi-ng: sun5i: Fix bit offset of audio PLL post-divider
crypto: crypto4xx - increase context and scatter ring buffer elements
crypto: lrw - Fix an error handling path in 'create()'
rtc: pl031: make interrupt optional
kvm, mm: account kvm related kmem slabs to kmemcg
net: phy: at803x: Change error to EINVAL for invalid MAC
PCI: Avoid bus reset if bridge itself is broken
scsi: cxgb4i: fix Tx skb leak
scsi: mpt3sas: Fix IO error occurs on pulling out a drive from RAID1 volume 
created on two SATA drive
PCI: Create SR-IOV virtfn/physfn links before attaching driver
PM / OPP: Move error message to debug level
igb: check memory allocation failure
i40e: use the safe hash table iterator when deleting mac filters
iio: st_sensors: add register mask for status register
ixgbe: fix use of uninitialized padding
IB/rxe: check for allocation failure on elem
block,bfq: Disable writeback throttling
md: always set THREAD_WAKEUP and wake up wqueue if thread existed
ip_gre: check packet length and mtu correctly in erspan tx
ipv6: grab rt->rt6i_ref before allocating pcpu rt
leds: pca955x: Don't invert requested value in pca955x_gpio_set_value()
Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev
Bluetooth: hci_bcm: Fix setting of irq trigger type
i40e/i40evf: spread CPU affinity hints across online CPUs only
PCI/AER: Report non-fatal errors only to the affected endpoint
tracing: Exclude 'generic fields' from histograms
ASoC: codecs: msm8916-wcd-analog: fix micbias level
ASoC: img-parallel-out: Add pm_runtime_get/put to set_fmt callback
powerpc/xmon: Avoid tripping SMP hardlockup watchdog
powerpc/watchdog: Do not trigger SMP crash from touch_nmi_watchdog
sctp: silence warns on sctp_stream_init allocations
ASoC: codecs: msm8916-wcd-analog: fix module autoload
fm10k: fix mis-ordered parameters in declaration for .ndo_set_vf_bw
scsi: lpfc: Fix secure firmware updates
scsi: lpfc: PLOGI failures during NPIV testing
scsi: lpfc: Fix warning messages when NVME_TARGET_FC not defined
i40e: fix client notify of VF reset
vfio/pci: Virtualize Maximum Payload Size
ARM: exynos_defconfig: Enable UAS support for Odroid HC1 board
fm10k: ensure we process SM mbx when processing VF mbx
ibmvnic: Set state UP
net: ipv6: send NS for DAD when link operationally up
RDMA/hns: Avoid NULL pointer exception
staging: greybus: light: Release memory obtained by kasprintf
clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision
tcp: fix under-evaluated ssthresh in TCP Vegas
rtc: set the alarm to the next expiring timer
cpuidle: fix broadcast control when broadcast can not be entered
drm/vc4: Avoid using vrefresh==0 mode in DSI htotal math.
IB/opa_vnic: Properly clear Mac Table Digest
IB/opa_vnic: Properly return the total MACs in UC MAC list
thermal/drivers/hisi: Fix missing interrupt enablement
thermal/drivers/hisi: Fix kernel panic on alarm interrupt
thermal/drivers/hisi: Simplify the temperature/step computation
thermal/drivers/hisi: Fix multiple alarm interrupts firing
platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between state changes
mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y
bpf: fix branch pruning logic
bpf: fix corruption on concurrent perf_event_output calls
bpf, s390x: do not reload skb pointers in non-skb context
bpf, ppc64: do not reload skb pointers in non-skb context
bpf, sparc: fix usage of wrong reg for load_skb_regs after call
bpf/verifier: fix bounds calculation on BPF_RSH
bpf: fix incorrect sign extension in check_alu_op()
bpf: fix incorrect tracking of register size truncation
bpf: fix 32-bit ALU op verification
bpf: fix missing error return in check_stack_boundary()
bpf: force strict alignment checks for stack pointers
bpf: don't prune branches when a scalar is replaced with a pointer
bpf: fix integer overflows
selftests/bpf: add tests for recent bugfixes
linux/compiler.h: Split into compiler.h and compiler_types.h
Linux 4.14.9

** Affects: linux (Ubuntu)
     Importance: Medium
     Assignee: Seth Forshee (sforshee)
         Status: In Progress


** Tags: kernel-stable-tracking-bug

** Tags added: kernel-stable-tracking-bug

** Changed in: linux (Ubuntu)
   Importance: Undecided => Medium

** Changed in: linux (Ubuntu)
       Status: New => In Progress

** Changed in: linux (Ubuntu)
     Assignee: (unassigned) => Seth Forshee (sforshee)

** Description changed:

+ SRU Justification
  
-     SRU Justification
+     Impact:
+        The upstream process for stable tree updates is quite similar
+        in scope to the Ubuntu SRU process, e.g., each patch has to
+        demonstrably fix a bug, and each patch is vetted by upstream
+        by originating either directly from a mainline/stable Linux tree or
+        a minimally backported form of that patch. The v4.14.9 upstream stable
+        patch set is now available. It should be included in the Ubuntu
+        kernel as well.
  
-     Impact:
-        The upstream process for stable tree updates is quite similar
-        in scope to the Ubuntu SRU process, e.g., each patch has to
-        demonstrably fix a bug, and each patch is vetted by upstream
-        by originating either directly from a mainline/stable Linux tree or
-        a minimally backported form of that patch. The v4.14.9 upstream stable
-        patch set is now available. It should be included in the Ubuntu
-        kernel as well.
+        git://git.kernel.org/
  
-        git://git.kernel.org/
+     TEST CASE: TBD
  
-     TEST CASE: TBD
+        The following patches from the v4.14.9 stable release shall be
+ applied:
  
-        The following patches from the v4.14.9 stable release shall be
- applied:
+ x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates
+ objtool: Don't report end of section error after an empty unwind hint
+ x86/head: Remove confusing comment
+ x86/head: Remove unused 'bad_address' code
+ x86/head: Fix head ELF function annotations
+ x86/boot: Annotate verify_cpu() as a callable function
+ x86/xen: Fix xen head ELF annotations
+ x86/xen: Add unwind hint annotations
+ x86/head: Add unwind hint annotations
+ ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq()
+ x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig
+ x86/fpu/debug: Remove unused 'x86_fpu_state' and 'x86_fpu_deactivate_state' 
tracepoints
+ x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*'
+ x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit
+ bitops: Add clear/set_bit32() to linux/bitops.h
+ x86/cpuid: Add generic table for CPUID dependencies
+ x86/fpu: Parse clearcpuid= as early XSAVE argument
+ x86/fpu: Make XSAVE check the base CPUID features before enabling
+ x86/fpu: Remove the explicit clearing of XSAVE dependent features
+ x86/platform/UV: Convert timers to use timer_setup()
+ objtool: Print top level commands on incorrect usage
+ x86/cpuid: Prevent out of bound access in do_clear_cpu_cap()
+ mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
+ x86/kasan: Use the same shadow offset for 4- and 5-level paging
+ x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and 
CONFIG_XEN_PVH=y
+ x86/xen: Drop 5-level paging support code from the XEN_PV code
+ ACPI / APEI: remove the unused dead-code for SEA/NMI notification type
+ x86/asm: Don't use the confusing '.ifeq' directive
+ x86/build: Beautify build log of syscall headers
+ x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 
'nr_pages'
+ x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features
+ x86/mm: Relocate page fault error codes to traps.h
+ x86/boot: Relocate definition of the initial state of CR0
+ ptrace,x86: Make user_64bit_mode() available to 32-bit builds
+ x86/entry/64: Remove the restore_c_regs_and_iret label
+ x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths
+ x86/entry/64: Move SWAPGS into the common IRET-to-usermode path
+ x86/entry/64: Simplify reg restore code in the standard IRET paths
+ x86/entry/64: Shrink paranoid_exit_restore and make labels local
+ x86/entry/64: Use pop instead of movq in syscall_return_via_sysret
+ x86/entry/64: Merge the fast and slow SYSRET paths
+ x86/entry/64: Use POP instead of MOV to restore regs on NMI return
+ x86/entry/64: Remove the RESTORE_..._REGS infrastructure
+ xen, x86/entry/64: Add xen NMI trap entry
+ x86/entry/64: De-Xen-ify our NMI code
+ x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of 
native_load_sp0()
+ x86/entry/64: Pass SP0 directly to load_sp0()
+ x86/entry: Add task_top_of_stack() to find the top of a task's stack
+ x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context()
+ x86/entry/64: Stop initializing TSS.sp0 at boot
+ x86/entry/64: Remove all remaining direct thread_struct::sp0 reads
+ x86/entry/32: Fix cpu_current_top_of_stack initialization at boot
+ x86/entry/64: Remove thread_struct::sp0
+ x86/traps: Use a new on_thread_stack() helper to clean up an assertion
+ x86/entry/64: Shorten TEST instructions
+ x86/cpuid: Replace set/clear_bit32()
+ bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to 
linux/bitops.h")
+ x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE
+ x86/cpufeatures: Re-tabulate the X86_FEATURE definitions
+ x86/cpufeatures: Fix various details in the feature definitions
+ selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area()
+ selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as 
well
+ ACPI / APEI: Replace ioremap_page_range() with fixmap
+ x86/virt, x86/platform: Merge 'struct x86_hyper' into 'struct x86_platform' 
and 'struct x86_init'
+ x86/virt: Add enum for hypervisors to replace x86_hyper
+ drivers/misc/intel/pti: Rename the header file to free up the namespace
+ x86/cpufeature: Add User-Mode Instruction Prevention definitions
+ x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD
+ perf/x86: Enable free running PEBS for REGS_USER/INTR
+ bpf: fix build issues on um due to mising bpf_perf_event.h
+ locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE()
+ locking/barriers: Convert users of lockless_dereference() to READ_ONCE()
+ x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow
+ x86/entry/64/paravirt: Use paravirt-safe macro to access eflags
+ x86/unwinder/orc: Dont bail on stack overflow
+ x86/unwinder: Handle stack overflows more gracefully
+ x86/irq: Remove an old outdated comment about context tracking races
+ x86/irq/64: Print the offending IP in the stack overflow warning
+ x86/entry/64: Allocate and enable the SYSENTER stack
+ x86/dumpstack: Add get_stack_info() support for the SYSENTER stack
+ x86/entry/gdt: Put per-CPU GDT remaps in ascending order
+ x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct 
cpu_entry_area
+ x86/kasan/64: Teach KASAN about the cpu_entry_area
+ x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss
+ x86/dumpstack: Handle stack overflow on all stacks
+ x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct
+ x86/entry: Remap the TSS into the CPU entry area
+ x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0
+ x86/espfix/64: Stop assuming that pt_regs is on the entry stack
+ x86/entry/64: Use a per-CPU trampoline stack for IDT entries
+ x86/entry/64: Return to userspace from the trampoline stack
+ x86/entry/64: Create a per-CPU SYSCALL entry trampoline
+ x86/entry/64: Move the IST stacks into struct cpu_entry_area
+ x86/entry/64: Remove the SYSENTER stack canary
+ x86/entry: Clean up the SYSENTER_stack code
+ x86/entry/64: Make cpu_entry_area.tss read-only
+ x86/paravirt: Dont patch flush_tlb_single
+ x86/paravirt: Provide a way to check for hypervisors
+ x86/cpufeatures: Make CPU bugs sticky
+ optee: fix invalid of_node_put() in optee_driver_init()
+ backlight: pwm_bl: Fix overflow condition
+ drm: Add retries for lspcon mode detection
+ clk: sunxi-ng: nm: Check if requested rate is supported by fractional clock
+ clk: sunxi-ng: sun5i: Fix bit offset of audio PLL post-divider
+ crypto: crypto4xx - increase context and scatter ring buffer elements
+ crypto: lrw - Fix an error handling path in 'create()'
+ rtc: pl031: make interrupt optional
+ kvm, mm: account kvm related kmem slabs to kmemcg
+ net: phy: at803x: Change error to EINVAL for invalid MAC
+ PCI: Avoid bus reset if bridge itself is broken
+ scsi: cxgb4i: fix Tx skb leak
+ scsi: mpt3sas: Fix IO error occurs on pulling out a drive from RAID1 volume 
created on two SATA drive
+ PCI: Create SR-IOV virtfn/physfn links before attaching driver
+ PM / OPP: Move error message to debug level
+ igb: check memory allocation failure
+ i40e: use the safe hash table iterator when deleting mac filters
+ iio: st_sensors: add register mask for status register
+ ixgbe: fix use of uninitialized padding
+ IB/rxe: check for allocation failure on elem
+ block,bfq: Disable writeback throttling
+ md: always set THREAD_WAKEUP and wake up wqueue if thread existed
+ ip_gre: check packet length and mtu correctly in erspan tx
+ ipv6: grab rt->rt6i_ref before allocating pcpu rt
+ leds: pca955x: Don't invert requested value in pca955x_gpio_set_value()
+ Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev
+ Bluetooth: hci_bcm: Fix setting of irq trigger type
+ i40e/i40evf: spread CPU affinity hints across online CPUs only
+ PCI/AER: Report non-fatal errors only to the affected endpoint
+ tracing: Exclude 'generic fields' from histograms
+ ASoC: codecs: msm8916-wcd-analog: fix micbias level
+ ASoC: img-parallel-out: Add pm_runtime_get/put to set_fmt callback
+ powerpc/xmon: Avoid tripping SMP hardlockup watchdog
+ powerpc/watchdog: Do not trigger SMP crash from touch_nmi_watchdog
+ sctp: silence warns on sctp_stream_init allocations
+ ASoC: codecs: msm8916-wcd-analog: fix module autoload
+ fm10k: fix mis-ordered parameters in declaration for .ndo_set_vf_bw
+ scsi: lpfc: Fix secure firmware updates
+ scsi: lpfc: PLOGI failures during NPIV testing
+ scsi: lpfc: Fix warning messages when NVME_TARGET_FC not defined
+ i40e: fix client notify of VF reset
+ vfio/pci: Virtualize Maximum Payload Size
+ ARM: exynos_defconfig: Enable UAS support for Odroid HC1 board
+ fm10k: ensure we process SM mbx when processing VF mbx
+ ibmvnic: Set state UP
+ net: ipv6: send NS for DAD when link operationally up
+ RDMA/hns: Avoid NULL pointer exception
+ staging: greybus: light: Release memory obtained by kasprintf
+ clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision
+ tcp: fix under-evaluated ssthresh in TCP Vegas
+ rtc: set the alarm to the next expiring timer
+ cpuidle: fix broadcast control when broadcast can not be entered
+ drm/vc4: Avoid using vrefresh==0 mode in DSI htotal math.
+ IB/opa_vnic: Properly clear Mac Table Digest
+ IB/opa_vnic: Properly return the total MACs in UC MAC list
+ thermal/drivers/hisi: Fix missing interrupt enablement
+ thermal/drivers/hisi: Fix kernel panic on alarm interrupt
+ thermal/drivers/hisi: Simplify the temperature/step computation
+ thermal/drivers/hisi: Fix multiple alarm interrupts firing
+ platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between state changes
+ mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y
+ bpf: fix branch pruning logic
+ bpf: fix corruption on concurrent perf_event_output calls
+ bpf, s390x: do not reload skb pointers in non-skb context
+ bpf, ppc64: do not reload skb pointers in non-skb context
+ bpf, sparc: fix usage of wrong reg for load_skb_regs after call
+ bpf/verifier: fix bounds calculation on BPF_RSH
+ bpf: fix incorrect sign extension in check_alu_op()
+ bpf: fix incorrect tracking of register size truncation
+ bpf: fix 32-bit ALU op verification
+ bpf: fix missing error return in check_stack_boundary()
+ bpf: force strict alignment checks for stack pointers
+ bpf: don't prune branches when a scalar is replaced with a pointer
+ bpf: fix integer overflows
+ selftests/bpf: add tests for recent bugfixes
+ linux/compiler.h: Split into compiler.h and compiler_types.h
+ Linux 4.14.9

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1740872

Title:
  Bionic update to v4.14.9 stable release

Status in linux package in Ubuntu:
  In Progress

Bug description:
  SRU Justification

      Impact:
         The upstream process for stable tree updates is quite similar
         in scope to the Ubuntu SRU process, e.g., each patch has to
         demonstrably fix a bug, and each patch is vetted by upstream
         by originating either directly from a mainline/stable Linux tree or
         a minimally backported form of that patch. The v4.14.9 upstream stable
         patch set is now available. It should be included in the Ubuntu
         kernel as well.

         git://git.kernel.org/

      TEST CASE: TBD

         The following patches from the v4.14.9 stable release shall be
  applied:

  x86/asm: Remove unnecessary \n\t in front of CC_SET() from asm templates
  objtool: Don't report end of section error after an empty unwind hint
  x86/head: Remove confusing comment
  x86/head: Remove unused 'bad_address' code
  x86/head: Fix head ELF function annotations
  x86/boot: Annotate verify_cpu() as a callable function
  x86/xen: Fix xen head ELF annotations
  x86/xen: Add unwind hint annotations
  x86/head: Add unwind hint annotations
  ACPI / APEI: adjust a local variable type in ghes_ioremap_pfn_irq()
  x86/unwinder: Make CONFIG_UNWINDER_ORC=y the default in the 64-bit defconfig
  x86/fpu/debug: Remove unused 'x86_fpu_state' and 'x86_fpu_deactivate_state' 
tracepoints
  x86/unwind: Rename unwinder config options to 'CONFIG_UNWINDER_*'
  x86/unwind: Make CONFIG_UNWINDER_ORC=y the default in kconfig for 64-bit
  bitops: Add clear/set_bit32() to linux/bitops.h
  x86/cpuid: Add generic table for CPUID dependencies
  x86/fpu: Parse clearcpuid= as early XSAVE argument
  x86/fpu: Make XSAVE check the base CPUID features before enabling
  x86/fpu: Remove the explicit clearing of XSAVE dependent features
  x86/platform/UV: Convert timers to use timer_setup()
  objtool: Print top level commands on incorrect usage
  x86/cpuid: Prevent out of bound access in do_clear_cpu_cap()
  mm/sparsemem: Allocate mem_section at runtime for CONFIG_SPARSEMEM_EXTREME=y
  x86/kasan: Use the same shadow offset for 4- and 5-level paging
  x86/xen: Provide pre-built page tables only for CONFIG_XEN_PV=y and 
CONFIG_XEN_PVH=y
  x86/xen: Drop 5-level paging support code from the XEN_PV code
  ACPI / APEI: remove the unused dead-code for SEA/NMI notification type
  x86/asm: Don't use the confusing '.ifeq' directive
  x86/build: Beautify build log of syscall headers
  x86/mm/64: Rename the register_page_bootmem_memmap() 'size' parameter to 
'nr_pages'
  x86/cpufeatures: Enable new SSE/AVX/AVX512 CPU features
  x86/mm: Relocate page fault error codes to traps.h
  x86/boot: Relocate definition of the initial state of CR0
  ptrace,x86: Make user_64bit_mode() available to 32-bit builds
  x86/entry/64: Remove the restore_c_regs_and_iret label
  x86/entry/64: Split the IRET-to-user and IRET-to-kernel paths
  x86/entry/64: Move SWAPGS into the common IRET-to-usermode path
  x86/entry/64: Simplify reg restore code in the standard IRET paths
  x86/entry/64: Shrink paranoid_exit_restore and make labels local
  x86/entry/64: Use pop instead of movq in syscall_return_via_sysret
  x86/entry/64: Merge the fast and slow SYSRET paths
  x86/entry/64: Use POP instead of MOV to restore regs on NMI return
  x86/entry/64: Remove the RESTORE_..._REGS infrastructure
  xen, x86/entry/64: Add xen NMI trap entry
  x86/entry/64: De-Xen-ify our NMI code
  x86/entry/32: Pull the MSR_IA32_SYSENTER_CS update code out of 
native_load_sp0()
  x86/entry/64: Pass SP0 directly to load_sp0()
  x86/entry: Add task_top_of_stack() to find the top of a task's stack
  x86/xen/64, x86/entry/64: Clean up SP code in cpu_initialize_context()
  x86/entry/64: Stop initializing TSS.sp0 at boot
  x86/entry/64: Remove all remaining direct thread_struct::sp0 reads
  x86/entry/32: Fix cpu_current_top_of_stack initialization at boot
  x86/entry/64: Remove thread_struct::sp0
  x86/traps: Use a new on_thread_stack() helper to clean up an assertion
  x86/entry/64: Shorten TEST instructions
  x86/cpuid: Replace set/clear_bit32()
  bitops: Revert cbe96375025e ("bitops: Add clear/set_bit32() to 
linux/bitops.h")
  x86/mm: Define _PAGE_TABLE using _KERNPG_TABLE
  x86/cpufeatures: Re-tabulate the X86_FEATURE definitions
  x86/cpufeatures: Fix various details in the feature definitions
  selftests/x86/ldt_gdt: Add infrastructure to test set_thread_area()
  selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as 
well
  ACPI / APEI: Replace ioremap_page_range() with fixmap
  x86/virt, x86/platform: Merge 'struct x86_hyper' into 'struct x86_platform' 
and 'struct x86_init'
  x86/virt: Add enum for hypervisors to replace x86_hyper
  drivers/misc/intel/pti: Rename the header file to free up the namespace
  x86/cpufeature: Add User-Mode Instruction Prevention definitions
  x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD
  perf/x86: Enable free running PEBS for REGS_USER/INTR
  bpf: fix build issues on um due to mising bpf_perf_event.h
  locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE()
  locking/barriers: Convert users of lockless_dereference() to READ_ONCE()
  x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow
  x86/entry/64/paravirt: Use paravirt-safe macro to access eflags
  x86/unwinder/orc: Dont bail on stack overflow
  x86/unwinder: Handle stack overflows more gracefully
  x86/irq: Remove an old outdated comment about context tracking races
  x86/irq/64: Print the offending IP in the stack overflow warning
  x86/entry/64: Allocate and enable the SYSENTER stack
  x86/dumpstack: Add get_stack_info() support for the SYSENTER stack
  x86/entry/gdt: Put per-CPU GDT remaps in ascending order
  x86/mm/fixmap: Generalize the GDT fixmap mechanism, introduce struct 
cpu_entry_area
  x86/kasan/64: Teach KASAN about the cpu_entry_area
  x86/entry: Fix assumptions that the HW TSS is at the beginning of cpu_tss
  x86/dumpstack: Handle stack overflow on all stacks
  x86/entry: Move SYSENTER_stack to the beginning of struct tss_struct
  x86/entry: Remap the TSS into the CPU entry area
  x86/entry/64: Separate cpu_current_top_of_stack from TSS.sp0
  x86/espfix/64: Stop assuming that pt_regs is on the entry stack
  x86/entry/64: Use a per-CPU trampoline stack for IDT entries
  x86/entry/64: Return to userspace from the trampoline stack
  x86/entry/64: Create a per-CPU SYSCALL entry trampoline
  x86/entry/64: Move the IST stacks into struct cpu_entry_area
  x86/entry/64: Remove the SYSENTER stack canary
  x86/entry: Clean up the SYSENTER_stack code
  x86/entry/64: Make cpu_entry_area.tss read-only
  x86/paravirt: Dont patch flush_tlb_single
  x86/paravirt: Provide a way to check for hypervisors
  x86/cpufeatures: Make CPU bugs sticky
  optee: fix invalid of_node_put() in optee_driver_init()
  backlight: pwm_bl: Fix overflow condition
  drm: Add retries for lspcon mode detection
  clk: sunxi-ng: nm: Check if requested rate is supported by fractional clock
  clk: sunxi-ng: sun5i: Fix bit offset of audio PLL post-divider
  crypto: crypto4xx - increase context and scatter ring buffer elements
  crypto: lrw - Fix an error handling path in 'create()'
  rtc: pl031: make interrupt optional
  kvm, mm: account kvm related kmem slabs to kmemcg
  net: phy: at803x: Change error to EINVAL for invalid MAC
  PCI: Avoid bus reset if bridge itself is broken
  scsi: cxgb4i: fix Tx skb leak
  scsi: mpt3sas: Fix IO error occurs on pulling out a drive from RAID1 volume 
created on two SATA drive
  PCI: Create SR-IOV virtfn/physfn links before attaching driver
  PM / OPP: Move error message to debug level
  igb: check memory allocation failure
  i40e: use the safe hash table iterator when deleting mac filters
  iio: st_sensors: add register mask for status register
  ixgbe: fix use of uninitialized padding
  IB/rxe: check for allocation failure on elem
  block,bfq: Disable writeback throttling
  md: always set THREAD_WAKEUP and wake up wqueue if thread existed
  ip_gre: check packet length and mtu correctly in erspan tx
  ipv6: grab rt->rt6i_ref before allocating pcpu rt
  leds: pca955x: Don't invert requested value in pca955x_gpio_set_value()
  Bluetooth: hci_uart_set_flow_control: Fix NULL deref when using serdev
  Bluetooth: hci_bcm: Fix setting of irq trigger type
  i40e/i40evf: spread CPU affinity hints across online CPUs only
  PCI/AER: Report non-fatal errors only to the affected endpoint
  tracing: Exclude 'generic fields' from histograms
  ASoC: codecs: msm8916-wcd-analog: fix micbias level
  ASoC: img-parallel-out: Add pm_runtime_get/put to set_fmt callback
  powerpc/xmon: Avoid tripping SMP hardlockup watchdog
  powerpc/watchdog: Do not trigger SMP crash from touch_nmi_watchdog
  sctp: silence warns on sctp_stream_init allocations
  ASoC: codecs: msm8916-wcd-analog: fix module autoload
  fm10k: fix mis-ordered parameters in declaration for .ndo_set_vf_bw
  scsi: lpfc: Fix secure firmware updates
  scsi: lpfc: PLOGI failures during NPIV testing
  scsi: lpfc: Fix warning messages when NVME_TARGET_FC not defined
  i40e: fix client notify of VF reset
  vfio/pci: Virtualize Maximum Payload Size
  ARM: exynos_defconfig: Enable UAS support for Odroid HC1 board
  fm10k: ensure we process SM mbx when processing VF mbx
  ibmvnic: Set state UP
  net: ipv6: send NS for DAD when link operationally up
  RDMA/hns: Avoid NULL pointer exception
  staging: greybus: light: Release memory obtained by kasprintf
  clk: sunxi-ng: sun6i: Rename HDMI DDC clock to avoid name collision
  tcp: fix under-evaluated ssthresh in TCP Vegas
  rtc: set the alarm to the next expiring timer
  cpuidle: fix broadcast control when broadcast can not be entered
  drm/vc4: Avoid using vrefresh==0 mode in DSI htotal math.
  IB/opa_vnic: Properly clear Mac Table Digest
  IB/opa_vnic: Properly return the total MACs in UC MAC list
  thermal/drivers/hisi: Fix missing interrupt enablement
  thermal/drivers/hisi: Fix kernel panic on alarm interrupt
  thermal/drivers/hisi: Simplify the temperature/step computation
  thermal/drivers/hisi: Fix multiple alarm interrupts firing
  platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between state changes
  mm/sparsemem: Fix ARM64 boot crash when CONFIG_SPARSEMEM_EXTREME=y
  bpf: fix branch pruning logic
  bpf: fix corruption on concurrent perf_event_output calls
  bpf, s390x: do not reload skb pointers in non-skb context
  bpf, ppc64: do not reload skb pointers in non-skb context
  bpf, sparc: fix usage of wrong reg for load_skb_regs after call
  bpf/verifier: fix bounds calculation on BPF_RSH
  bpf: fix incorrect sign extension in check_alu_op()
  bpf: fix incorrect tracking of register size truncation
  bpf: fix 32-bit ALU op verification
  bpf: fix missing error return in check_stack_boundary()
  bpf: force strict alignment checks for stack pointers
  bpf: don't prune branches when a scalar is replaced with a pointer
  bpf: fix integer overflows
  selftests/bpf: add tests for recent bugfixes
  linux/compiler.h: Split into compiler.h and compiler_types.h
  Linux 4.14.9

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1740872/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to