Linux 4.14-rc3

From: Linus Torvalds
Date: Sun Oct 01 2017 - 18:49:39 EST


So 4.14 continues to be a somewhat painful release, and I'm starting
to at least partly blame the fact that it's meant to be an LTS
release.

The last LTS release we had (4.9) resulted in one of the biggest
kernel releases we ever had because everybody wanted in; the 4.14
release doesn't seem to be as large, but it does seem to result in
some late work happening because people want to prep for 4.14, knowing
it will be LTS.

But who knows. Some of this may just be pure coincidence too. But I
already know of two more pull requests that are still pending that
will also probably want to be pushed into 4.14.

Anyway, on to the actual rc3 changes.. Most of them are the normal
small fixes, but a few things do stand out:

- some x86 FPU state handling fixes

- fixed some crypto problems in our internal key handling

- some smp/hotplug cleanups

and all of them are bigger than I would have wished for at this stage,
but all of them had fine reasons for going in now. They all had one
thing in common, in that they also came with cleanups in order to fix
the underlying problem (so often the actual commit that _fixes_ it is
pretty small, but there's a series of cleanups that makes that fix
possible).

The two issues that I know as potentially still pending are some of
the same kind: a writeback fix and some watchdog fixes, both with the
majority being cleanups in order to fix things.

Anyway, this all has the common thread that I'd have loved to get that
code during the merge window as "obviously good changes", but I'm not
thrilled to get it during the rc stages.

Oh well. Enough of the "Woe is me".

Things don't actually look *bad*. Yes, it's more changes than I would
have wished for at this stage, but at the same time none of it looks
like it's really fundamentally problematic for the 4.14 release. Most
of the x86 FPU state cleanups had already been around for a while just
because they were needed cleanup, for example, it's just that the bug
fixes made them get merged at a less than optimal time.

The various changes do end up making the diffstat look somewhat
unusual: driver fixes that usually dominate are just a quarter of the
haul this rc around, with arch fixes (almost all of which are x86) are
another quarter. The rest is core kernel (much of it the smp/hotplug
updates), security (the key handling changes) and tooling (much of it
perf, but also more selftests). Some fs fixes (btrfs and xfs, some
misc) accounts for the rest.

It's still early enough in the rc release that I don't know if this
will impact timing. Right now it still feels like we're fine with the
usual schedule (ie rc7 being the last rc), but we'll just have to see
how this release cycle continues.

Do go out and test, please.

Linus

---

Adrian Hunter (1):
mmc: sdhci-pci: Fix voltage switch for some Intel host controllers

Akemi Yagi (1):
perf tools: Fix syscalltbl build failure

Al Viro (2):
fix a typo in put_compat_shm_info()
fix infoleak in waitid(2)

Alex Deucher (1):
drm/radeon: disable hard reset in hibernate for APUs

Alex Estrin (1):
Revert "IB/ipoib: Update broadcast object if PKey value was
changed in index 0"

Alex Vesker (1):
IB/ipoib: Fix inconsistency with free_netdev and free_rdma_netdev

Alexander Shishkin (1):
perf/aux: Only update ->aux_wakeup in non-overwrite mode

Alexandru Moise (1):
genirq: Check __free_irq() return value for NULL

Andi Kleen (1):
x86/fpu: Turn WARN_ON() in context switch into WARN_ON_FPU()

Andreas Gruenbacher (2):
gfs2: Fix debugfs glocks dump
vfs: Return -ENXIO for negative SEEK_HOLE / SEEK_DATA offsets

Andrey Ryabinin (1):
x86/asm: Use register variable to get stack pointer value

Arnaldo Carvalho de Melo (2):
perf tools: Get all of tools/{arch,include}/ in the MANIFEST
perf evsel: Fix attr.exclude_kernel setting for default cycles:p

Arnd Bergmann (1):
isofs: fix build regression

Arvind Yadav (1):
iommu/amd: pr_err() strings should end with newlines

Babu Moger (1):
arch: change default endian for microblaze

Bhumika Goyal (1):
x86/numachip: Add const and __initconst to numachip2_clockevent

Boqun Feng (1):
kvm/x86: Handle async PF in RCU read-side critical sections

Boris Brezillon (1):
mtd: Fix partition alignment check on multi-erasesize devices

Carlos Maiolino (1):
xfs: Capture state of the right inode in xfs_iflush_done

Chandan Rajendra (1):
iomap_dio_rw: Allocate AIO completion queue before submitting dio

Christoph Hellwig (1):
bsg-lib: don't free job in bsg_prepare_job

Colin Ian King (3):
drm/amdkfd: check for null dev to avoid a null pointer dereference
x86/xen: clean up clang build warning
xfs: remove redundant re-initialization of total_nr_pages

Daniel DÃaz (2):
selftests: net: More graceful finding of `ip'.
selftests: intel_pstate: build only on x86

Darrick J. Wong (4):
xfs: don't unconditionally clear the reflink flag on zero-block files
xfs: evict CoW fork extents when performing finsert/fcollapse
xfs: perag initialization should only touch m_ag_max_usable for AG 0
xfs: revert "xfs: factor rmap btree size into the indlen calculations"

Dave Carroll (1):
scsi: aacraid: Fix 2T+ drives on SmartIOC-2000

Eric Biggers (22):
x86/fpu: Don't let userspace set bogus xcomp_bv
x86/fpu: Reinitialize FPU registers if restoring FPU state fails
KEYS: fix cred refcount leak in request_key_auth_new()
KEYS: don't revoke uninstantiated key in request_key_auth_new()
KEYS: fix key refcount leak in keyctl_assume_authority()
KEYS: fix key refcount leak in keyctl_read_key()
KEYS: fix writing past end of user-supplied buffer in keyring_read()
KEYS: prevent creating a different user's keyrings
KEYS: prevent KEYCTL_READ on negative key
KEYS: reset parent each time before searching key_user_tree
KEYS: restrict /proc/keys by credentials at open time
KEYS: use kmemdup() in request_key_auth_new()
x86/fpu: Introduce validate_xstate_header()
x86/fpu: Use validate_xstate_header() to validate the
xstate_header in xstateregs_set()
x86/fpu: Use validate_xstate_header() to validate the
xstate_header in __fpu__restore_sig()
x86/fpu: Copy the full state_header in copy_kernel_to_xstate()
x86/fpu: Eliminate the 'xfeatures' local variable in
copy_kernel_to_xstate()
x86/fpu: Use validate_xstate_header() to validate the
xstate_header in copy_kernel_to_xstate()
x86/fpu: Copy the full header in copy_user_to_xstate()
x86/fpu: Eliminate the 'xfeatures' local variable in copy_user_to_xstate()
x86/fpu: Use validate_xstate_header() to validate the
xstate_header in copy_user_to_xstate()
x86/fpu: Use using_compacted_format() instead of open coded
X86_FEATURE_XSAVES

Eryu Guan (3):
xfs: kill meaningless variable 'zero'
xfs: report zeroed or not correctly in xfs_zero_range()
xfs: update i_size after unwritten conversion in dio completion

Ethan Zhao (1):
sched/sysctl: Check user input value of sysctl_sched_time_avg

Fathi Boudra (1):
selftests: breakpoints: re-order TEST_GEN_PROGS targets

Felix Kuehling (2):
drm/amdkfd: Fix incorrect destroy_mqd parameter
drm/amdkfd: Print event limit messages only once per process

Geert Uytterhoeven (1):
PCI: Add dummy pci_acs_enabled() for CONFIG_PCI=n build

Gerd Hoffmann (2):
qxl: fix primary surface handling
qxl: fix framebuffer unpinning

Guilherme G. Piccoli (2):
nvme-fabrics: Allow 0 as KATO value
scsi: aacraid: Add a small delay after IOP reset

Hannes Reinecke (2):
scsi: scsi_transport_fc: set scsi_target_id upon rescan
scsi: scsi_transport_fc: Also check for NOTPRESENT in fc_remote_port_add()

Hans Verkuil (1):
drm/sun4i: cec: Enable back CEC-pin framework

Harish Chegondi (1):
IB/hfi1: Unsuccessful PCIe caps tuning should not fail driver load

Helge Deller (1):
fs/xfs: Use %pS printk format for direct addresses

Ilya Lesokhin (2):
IB/mlx5: Simplify mlx5_ib_cont_pages
IB/mlx5: Fix NULL deference on mlx5_ib_update_xlt failure

Ingo Molnar (28):
x86/fpu: Rename copyin_to_xsaves()/copyout_from_xsaves() to
copy_user_to_xstate()/copy_xstate_to_user()
x86/fpu: Split copy_xstate_to_user() into
copy_xstate_to_kernel() & copy_xstate_to_user()
x86/fpu: Remove 'ubuf' parameter from the copy_xstate_to_kernel() APIs
x86/fpu: Remove 'kbuf' parameter from the copy_xstate_to_user() APIs
x86/fpu: Clean up parameter order in the copy_xstate_to_*() APIs
x86/fpu: Clean up the parameter definitions of copy_xstate_to_*()
x86/fpu: Remove the 'start_pos' parameter from the
__copy_xstate_to_*() functions
x86/fpu: Clarify parameter names in the copy_xstate_to_*() methods
x86/fpu: Change 'size_total' parameter to unsigned and
standardize the size checks in copy_xstate_to_*()
x86/fpu: Simplify __copy_xstate_to_kernel() return values
x86/fpu: Split copy_user_to_xstate() into
copy_kernel_to_xstate() & copy_user_to_xstate()
x86/fpu: Remove 'ubuf' parameter from the copy_kernel_to_xstate() API
x86/fpu: Remove 'kbuf' parameter from the copy_user_to_xstate() API
x86/fpu: Flip the parameter order in copy_*_to_xstate()
x86/fpu: Simplify fpu->fpregs_active use
x86/fpu: Make the fpu state change in fpu__clear() scheduler-atomic
x86/fpu: Split the state handling in fpu__drop()
x86/fpu: Change fpu->fpregs_active users to fpu->fpstate_active
x86/fpu: Decouple fpregs_activate()/fpregs_deactivate() from
fpu->fpregs_active
x86/fpu: Remove struct fpu::fpregs_active
tools include: Sync kernel ABI headers with tooling headers
x86/fpu: Fix fpu__activate_fpstate_read() and update comments
x86/fpu: Remove fpu__current_fpstate_write_begin/end()
x86/fpu: Rename fpu::fpstate_active to fpu::initialized
x86/fpu: Fix stale comments about lazy FPU logic
x86/fpu: Simplify and speed up fpu__copy()
x86/fpu: Rename fpu__activate_curr() to fpu__initialize()
x86/fpu: Rename fpu__activate_fpstate_read/write() to
fpu__prepare_[read|write]()

James Smart (17):
nvme-fc: remove use of FC-specific error codes
nvmet-fc: remove use of FC-specific error codes
nvmet-fcloop: remove use of FC-specific error codes
lpfc: remove use of FC-specific error codes
qla2xxx: remove use of FC-specific error codes
nvme.h: remove FC transport-specific error values
nvme: add transport SGL definitions
nvme-fc: use transport-specific sgl format
nvmet-fc: fix failing max io queue connections
nvme: stop aer posting if controller state not live
nvme: allow timed-out ios to retry
nvmet: implement valid sqhd values in completions
nvme: fix sqhd reference when admin queue connect fails
nvmet-fc: on port remove call put outside lock
nvmet-fc: ensure target queue id within range.
nvmet-fc: sync header templates with comments
nvme-fcloop: fix port deletes and callbacks

Jan Beulich (1):
xen-pciback: relax BAR sizing write value check

Jan Kara (1):
quota: Fix quota corruption with generic/232 test

Jan Sokolowski (1):
IB/hfi1: Check eeprom config partition validity

Jason A. Donenfeld (2):
security/keys: properly zero out sensitive key material in big_key
security/keys: rewrite all of big_key crypto

Jean Delvare (1):
drm/amdgpu: revert tile table update for oland

Jean-Philippe Brucker (1):
iommu: Fix comment for iommu_ops.map_sg

Jeffy Chen (1):
irq/generic-chip: Don't replace domain's name

Josef Bacik (5):
selftests: silence test output by default
selftest: add a reuseaddr test
selftests: actually run the various net selftests
nbd: ignore non-nbd ioctl's
btrfs: log csums for all modified extents

Josh Poimboeuf (3):
objtool: Skip unreachable warnings for GCC 4.4 and older
objtool: Support unoptimized frame pointer setup
x86/asm: Fix inline asm call constraints for GCC 4.4

Kamenee Arumugam (1):
IB/hfi1: Return correct value in general interrupt handler

Kan Liang (4):
perf/x86/intel/cstate: Add missing CPU IDs
perf/x86/msr: Add missing CPU IDs
perf/x86/intel/rapl: Add missing CPU IDs
perf/x86/intel/uncore: Correct num_boxes for IIO and IRP

Kees Cook (2):
selftests/seccomp: Support glibc 2.26 siginfo_t.h
timer: Prepare to change timer callback argument type

Keith Busch (2):
nvme-pci: initialize queue memory before interrupts
nvme-pci: Print invalid SGL only once

Kenjiro Nakayama (1):
xfs: Output warning message when discard option was enabled even
though the device does not support discard

Konstantin Khlebnikov (1):
quota: add missing lock into __dquot_transfer()

Ladi Prosek (1):
KVM: nVMX: fix HOST_CR3/HOST_CR4 cache

Laurent Dufour (1):
x86/mm: Fix fault error path using unsafe vma pointer

Leon Romanovsky (1):
IB/core: Fix typo in the name of the tag-matching cap struct

Li Zhijian (1):
selftests/memfd: correct run_tests.sh permission

Linus Torvalds (2):
Revert "Bluetooth: Add option for disabling legacy ioctl interfaces"
Linux 4.14-rc3

Liu Bo (7):
Btrfs: use the new helper wbc_to_write_flags
Btrfs: do not reset bio->bi_ops while writing bio
Btrfs: do not backup tree roots when fsync
Btrfs: use btrfs_op instead of bio_op in __btrfs_map_block
Btrfs: fix kernel oops while reading compressed data
Btrfs: skip checksum when reading compressed data if some IO have failed
Btrfs: fix unexpected result when dio reading corrupted blocks

Lucas Stach (2):
etnaviv: fix submit error path
etnaviv: fix gem object list corruption

Lukas Czerner (1):
fs: Fix page cache inconsistency when mixing buffered and AIO DIO

Marc Zyngier (1):
arm64: Make sure SPsel is always set

Martin Wilck (1):
scsi: ILLEGAL REQUEST + ASC==27 => target failure

Masahiro Yamada (1):
irqdomain: Add __rcu annotations to radix tree accessors

Mengting Zhang (1):
perf report: Fix debug messages with --call-graph option

Michael J. Ruhl (1):
IB/hfi1: On error, fix use after free during user context setup

Michael Neuling (1):
KVM: PPC: Book3S HV: Check for updated HDSISR on P9 HDSI exception

Michal Simek (1):
microblaze: Add missing kvm_para.h to Kbuild

Mikulas Patocka (1):
brd: fix overflow in __brd_direct_access

Misono, Tomohiro (1):
btrfs: remove BTRFS_FS_QUOTA_DISABLING flag

Naohiro Aota (4):
btrfs: clear ordered flag on cleaning up ordered extents
btrfs: finish ordered extent cleaning if no progress is found
btrfs: fix NULL pointer dereference from free_reloc_roots()
btrfs: propagate error to btrfs_cmp_data_prepare caller

Nicolai Stange (1):
PCI: Fix race condition with driver_override

Nikola Pajkovsky (1):
scsi: aacraid: error: testing array offset 'bus' after use

Oleg Nesterov (1):
seccomp: fix the usage of get/put_seccomp_filter() in seccomp_get_filter()

Omar Sandoval (2):
loop: remove union of use_aio and ref in struct loop_cmd
Btrfs: fix incorrect {node,sector}size endianness from BTRFS_IOC_FS_INFO

Paolo Bonzini (4):
KVM: VMX: extract __pi_post_block
KVM: VMX: avoid double list add with VT-d posted interrupts
KVM: VMX: simplify and fix vmx_vcpu_pi_load
KVM: VMX: use cmpxchg64

Parav Pandit (2):
IB/core: Fix qp_sec use after free access
IB: Correct MR length field to be 64-bit

Paul Burton (2):
irqchip/mips-gic: Fix shifts to extract register fields
irqchip/mips-gic: Use effective affinity to unmask

Paul E. McKenney (1):
rcu: Allow for page faults in NMI handlers

Peter Zijlstra (16):
futex: Fix pi_state->owner serialization
smp/hotplug: Add state diagram
smp/hotplug: Allow external multi-instance rollback
smp/hotplug: Rewrite AP state machine core
smp/hotplug: Callback vs state-machine consistency
smp/hotplug: Differentiate the AP-work lockdep class between up and down
smp/hotplug: Differentiate the AP completion between up and down
smp/hotplug: Hotplug state fail injection
sched/debug: Implement consistent task-state printing
sched/debug: Convert TASK_state to hex
sched/debug: Remove unused variable
sched/tracing: Fix trace_sched_switch task-state printing
sched/tracing: Use common task-state helpers
sched/debug: Add explicit TASK_IDLE printing
sched/debug: Ignore TASK_IDLE for SysRq-W
sched/debug: Add explicit TASK_PARKED printing

Prateek Sood (1):
locking/rwsem-xadd: Fix missed wakeup due to reordering of load

Rafael J. Wysocki (1):
cpufreq: docs: Drop intel-pstate.txt from index.txt

Richard Genoud (1):
mtd: nand: atmel: fix buffer overflow in atmel_pmecc_user

Rik van Riel (1):
x86/fpu: Add FPU state copying quirk to handle XRSTOR failure on
Intel Skylake CPUs

Ross Zwisler (1):
xfs: validate bdev support for DAX inode flag

Sagi Grimberg (3):
nvme-core: Use nvme_wq to queue async events and fw activation
nvme-rdma: give up reconnect if state change fails
nvme-rdma: don't fully stop the controller in error recovery

Sakari Ailus (4):
as3645a: Use ams,input-max-microamp as documented in DT bindings
dt: bindings: as3645a: Use LED number to refer to LEDs
as3645a: Use integer numbers for parsing LEDs
as3645a: Unregister indicator LED on device unbind

Sargun Dhillon (1):
btrfs: Report error on removing qgroup if del_qgroup_item fails

Sean Fu (1):
x86/sysfs: Fix off-by-one error in loop termination

Sean Wang (1):
MAINTAINERS: Add entry for MediaTek PMIC LED driver

Sebastian Sanchez (2):
IB/hfi1: Turn off AOC TX after offline substates
IB/hfi1: Only reset QSFP after link up and turn off AOC TX

Shalom Lagziel (1):
IB/ipoib: Fix sysfs Pkey create<->remove possible deadlock

Shaohua Li (5):
block: fix a crash caused by wrong API
md: separate request handling
md: fix a race condition for flush request handling
dm-raid: fix a race condition in request handling
md/raid5: cap worker count

Shuah Khan (15):
Makefile: kselftest and kselftest-clean fail for make O=dir case
selftests: lib.mk: kselftest and kselftest-clean fail for make O=dir case
selftests: Makefile: clear LDFLAGS for make O=dir use-case
selftests: lib.mk: fix test executable status check to use full path
selftests: watchdog: fix to use TEST_GEN_PROGS and remove clean
selftests: lib.mk: add TEST_CUSTOM_PROGS to allow custom test run/install
selftests: sync: use TEST_CUSTOM_PROGS instead of TEST_PROGS
selftests: sync: kselftest and kselftest-clean fail for make O=dir case
selftests: lib.mk: copy test scripts and test files for make O=dir run
selftests: futex: copy sub-dir test scripts for make O=dir run
selftests: mqueue: Use full path to run tests from Makefile
selftests: Makefile: fix for loops in targets to run silently
selftests: futex: Makefile: fix for loops in targets to run silently
selftests: timers: set-timer-lat: fix hang when std out/err are redirected
selftests: timers: set-timer-lat: Fix hang when testing unsupported alarms

Stefano Brivio (1):
scsi: lpfc: Don't return internal MBXERR_ERROR code from probe function

Steven Rostedt (VMware) (3):
extable: Consolidate *kernel_text_address() functions
extable: Enable RCU if it is not watching in kernel_text_address()
tracing: Remove RCU work arounds from stack tracer

Suniel Mahesh (1):
cpufreq: dt: Fix sysfs duplicate filename creation for platform-device

Thierry Reding (1):
drm/tegra: trace: Fix path to include

Thomas Gleixner (1):
um/time: Fixup namespace collision

Thomas Meyer (5):
selftests/intel_pstate: No need to compile test progs in the run script
selftests/bpf: Make bpf_util work on uniprocessor systems
selftests/ftrace: multiple_kprobes: Also check for support
selftests/net: msg_zerocopy enable build with older kernel headers
microblaze: Cocci spatch "vma_pages"

Thomas Richter (3):
tools: fix testing/selftests/sigaltstack for s390x
perf test: Fix vmlinux failure on s390x
perf test: Fix vmlinux failure on s390x part 2

Tom Lendacky (1):
x86/mm: Disable branch profiling in mem_encrypt.c

Tsutomu Itoh (1):
Btrfs: send: fix error number for unknown inode types

Tyler Baicar (1):
ACPI / APEI: clear error status before acknowledging the error

Ville SyrjÃlà (2):
x86: Don't cast away the __user in __get_user_asm_u64()
platform/x86: fujitsu-laptop: Don't oops when FUJ02E3 is not presnt

Viresh Kumar (1):
PM / OPP: Call notifier without holding opp_table->lock

Waiman Long (1):
blktrace: Fix potential deadlock between delete & sysfs ops

Wanpeng Li (1):
KVM: nVMX: Fix nested #PF intends to break L1's vmlauch/vmresume

Will Deacon (2):
arm64: mm: Use READ_ONCE when dereferencing pointer to pte table
arm64: fault: Route pte translation faults via do_translation_fault

Wolfram Sang (1):
mmc: tmio: remove broken and noisy debug macro

Xin Long (1):
scsi: scsi_transport_iscsi: fix the issue that iscsi_if_rx
doesn't parse nlmsg properly

Yong Wu (2):
iommu/io-pgtable-arm-v7s: Need dma-sync while there is no QUIRK_NO_DMA
iommu/mediatek: Limit the physical address in 32bit for v7s

Yong Zhao (1):
drm/amdkfd: Fix kernel-queue wrapping bugs

Zhenzhong Duan (1):
xen/mmu: Call xen_cleanhighmap() with 4MB aligned for page tables mapping

kbuild test robot (1):
x86/fpu: Fix boolreturn.cocci warnings

satoru takeuchi (1):
btrfs: prevent to set invalid default subvolid