Linux 4.15-rc4

From: Linus Torvalds
Date: Sun Dec 17 2017 - 22:38:46 EST


So it looks like 4.15 is finally calming down, with rc4 being about
average size-wise for this time in the release process.

Of course, we not only have the holiday season coming up, we *also*
have some x86 entry and page table handling fixes pending. But that's
not for today, and not for rc4. Let's enjoy the short normal phase of
4.15 today.

The most noticeable thing to most normal users in rc4 is that we
should finally have cleaned up and fixed the suspend/resume handling.
That got first broken for some (unusual) kernel configurations due to
excessive debugging at a very inopportune time in early resume, and
when _that_ got fixed, we broke the 32-bit case. Not many developers
run 32-bit builds in real life any more, so that took a bit to even
notice.

Anyway, the good news is that as a result of that silly chaos, the
code is now a lot cleaner and more maintainable: none of the bugs here
were _complex_ per se, they were just a result of some really nasty
code and the fragility of resume bringup. It should all be good now.

Of course, that thing that may be noticeable to users is just a tiny
small detail, and not actually all that noticeable in the diffs or the
commit logs (below). As usual, the actual *bulk* of the changes tend
to be drivers, although this time there's also a noticeable removal of
the cross-locking debug code that caused problems (not for normal
users, but for developers). So that adds to the diffstat, but doesn't
affect most people. There's still discussion about how to possibly
resurrect that code later.

Outside of the drivers and locking changes, there's the usual noise
elsewhere: some filesystem fixes, some networking, some tooling. The
appended shortlog gives a taste of it all. It's small enough that you
can scroll down and skim it for a sense of whats been going on.

I would like to say that I hope things will continue to calm down, but
I already know I have more stuff pending. That, together with the
holidays, makes me strongly suspect that this will be one of those
"we'll do an rc8" releases, but we'll see. I won't actually make that
decision until we get to that point, and there's little point in
worrying about it yet.

Go out and test. I think we're in pretty good shape right now.

Linus

---

Adam Wallis (1):
dmaengine: dmatest: move callback wait queue to thread context

Al Viro (1):
alloc_super(): do ->s_umount initialization earlier

Alan Stern (1):
USB: core: prevent malicious bNumInterfaces overflow

Albert Pool (1):
ata: mediatek: Fix typo in module description

Amir Goldstein (2):
ovl: update ctx->pos on impure dir iteration
ovl: fix overlay: warning prefix

Andi Kleen (2):
ext4: support fast symlinks from ext3 file systems
perf/x86: Enable free running PEBS for REGS_USER/INTR

Andreas Platschek (2):
usb: dwc3: of-simple: fix missing clk_disable_unprepare
dmaengine: fsl-edma: disable clks on all error paths

Andrew Morton (1):
mm/kmemleak.c: make cond_resched() rate-limiting more efficient

Andrey Konovalov (1):
USB: core: only clean up what we allocated

Andrey Ryabinin (2):
x86/unwinder/guess: Prevent using CONFIG_UNWINDER_GUESS=y with
CONFIG_STACKDEPOT=y
x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow

Andy Lutomirski (3):
x86/power/64: Use struct desc_ptr for the IDT in struct saved_context
x86/power/32: Move SYSENTER MSR restoration to fix_processor_context()
x86/power: Make restore_processor_context() sane

Arnd Bergmann (9):
scsi: aacraid: address UBSAN warning regression
tracing: always define trace_{irq,preempt}_{enable_disable}
tracing: make PREEMPTIRQ_EVENTS depend on TRACING
netfilter: ipt_CLUSTERIP: fix clusterip_net_exit build regression
scsi: bfa: fix type conversion warning
usb: gadget: webcam: fix V4L2 Kconfig dependency
string.h: workaround for increased stack usage
exec: avoid gcc-8 warning for get_task_comm
cramfs: fix MTD dependency

Arvind Yadav (3):
pata_pdc2027x: Remove unnecessary error check
pata_pdc2027x : make pdc2027x_*_timing structures const
i2c-cht-wc: constify platform_device_id

Aurelien Aptel (1):
CIFS: don't log STATUS_NOT_FOUND errors for DFS

Bart Van Assche (1):
scsi: core: Fix a scsi_show_rq() NULL pointer dereference

Benjamin Gaignard (1):
i2c: stm32: Fix copyrights

Bin Liu (1):
usb: musb: da8xx: fix babble condition handling

Branislav Radocaj (1):
net: ethernet: arc: fix error handling in emac_rockchip_probe

Chandan Rajendra (1):
ext4: fix crash when a directory's i_size is too small

Changbin Du (2):
tracing: Allocate mask_str buffer dynamically
x86/build: Don't verify mtools configuration file for isoimage

Chengguang Xu (1):
ovl: Sync upper dirty data when syncing overlayfs

Chris Wilson (1):
lib/rbtree,drm/mm: add rbtree_replace_node_cached()

Christian KÃnig (2):
x86/PCI: Fix infinite loop in search for 64bit BAR placement
x86/PCI: Only enable a 64bit BAR on single-socket AMD Family 15h

Christoph Fritz (1):
mmc: core: apply NO_CMD23 quirk to some specific cards

Christoph Hellwig (1):
xfs: remove "no-allocation" reservations for file creations

Christoph Paasch (1):
tcp md5sig: Use skb's saddr when replying to an incoming segment

Christophe JAILLET (2):
dmaengine: ioat: Fix error handling path
mm/frame_vector.c: release a semaphore in 'get_vaddr_frames()'

Chuck Lever (1):
xprtrdma: Spread reply processing over more CPUs

Chunfeng Yun (1):
usb: xhci: fix TDS for MTK xHCI1.1

Chunyu Hu (1):
tracing: Fix code comments in trace.c

Colin Ian King (2):
netfilter: remove redundant assignment to e
net: phy: meson-gxl: make function meson_gxl_read_status static

Corey Minyard (1):
ipmi_si: Fix oops with PCI devices

Dan Carpenter (4):
scsi: lpfc: Use after free in lpfc_rq_buf_free()
staging: ccree: Uninitialized return in ssi_ahash_import()
RISC-V: Logical vs Bitwise typo
platform/x86: dell-wmi: check for kmalloc() errors

Daniel Borkmann (4):
bpf: fix corruption on concurrent perf_event_output calls
bpf: fix build issues on um due to mising bpf_perf_event.h
bpf: fix broken BPF selftest build
bpf: fix build issues on um due to mising bpf_perf_event.h

Daniel Jurgens (2):
IB/core: Bound check alternate path port number
IB/core: Don't enforce PKey security on SMI MADs

Daniel Vetter (1):
drm: rework delayed connector cleanup in connector_iter

Daniele Palmas (1):
net: usb: qmi_wwan: add Telit ME910 PID 0x1101 support

Darrick J. Wong (1):
xfs: make iomap_begin functions trim iomaps consistently

Dave Martin (1):
arm64/sve: Report SVE to userspace via CPUID only if supported

Dave Young (1):
mm/early_ioremap: Fix boot hang with earlyprintk=efi,keep

David Kozub (1):
USB: uas and storage: Add US_FL_BROKEN_FUA for another JMicron JMS567 ID

David Lechner (1):
eeprom: at24: change nvmem stride to 1

David Milburn (1):
libata: sata_down_spd_limit should return if driver has not
recorded sstatus speed

Dmitry Vyukov (1):
kcov: fix comparison callback signature

Dongjiu Geng (1):
arm64: fault: avoid send SIGBUS two times

Eran Ben Elisha (2):
net/mlx4_core: Fix wrong calculation of free counters
net/mlx4_en: Fill all counters under one call of stats lock

Eric Biggers (5):
crypto: rsa - fix buffer overread when stripping leading zeroes
crypto: algif_aead - fix reference counting of null skcipher
crypto: af_alg - fix NULL pointer dereference in
crypto: hmac - require that the underlying hash algorithm is unkeyed
crypto: salsa20 - fix blkcipher_walk API usage

Eric Dumazet (4):
bpf: add schedule points to map alloc/free
ipv6: mcast: better catch silly mtu values
ipv4: igmp: guard against silly MTU values
tcp: refresh tcp_mstamp from timers callbacks

Eric Sesterhenn (2):
netfilter: nf_ct_h323: Convert CHECK_BOUND macro to function
netfilter: nf_ct_h323: Extend nf_h323_error_boundary to work on
bits as well

Eryu Guan (1):
ext4: fix fdatasync(2) after fallocate(2) operation

Eugenia Emantayev (1):
net/mlx4_en: Fix selftest for small MTUs

Felipe Balbi (2):
tracing: Pass export pointer as argument to ->write()
Revert "usb: gadget: allow to enable legacy drivers without USB_ETH"

Florian Westphal (2):
netfilter: conntrack: lower timeout to RETRANS seconds if window is 0
netfilter: exthdr: add missign attributes to policy

Geert Uytterhoeven (4):
PCI: rcar: Fix use-after-free in probe error path
Revert "ravb: add workaround for clock when resuming with WoL enabled"
mm/memory.c: mark wp_huge_pmd() inline to prevent build failure
mm/slab.c: do not hash pointers when debugging slab

Greg Kroah-Hartman (1):
Revert "USB: core: only clean up what we allocated"

Gustavo A. R. Silva (1):
dmaengine: at_hdmac: fix potential NULL pointer dereference in
atc_prep_dma_interleaved

Guy Levi (1):
IB/mlx4: Fix RSS hash fields restrictions

Haishuang Yan (1):
ip_gre: fix wrong return value of erspan_rcv

Hemanth Puranik (1):
net: qcom/emac: Reduce timeout for mdio read/write

Igor Russkikh (9):
net: aquantia: Fix actual speed capabilities reporting
net: aquantia: Fix hardware DMA stream overload on large MRRS
net: aquantia: Extend stat counters to 64bit values
net: aquantia: Fill ndev stat couters from hardware
net: aquantia: Fill in multicast counter in ndev stats from hardware
net: aquantia: Improve link state and statistics check interval callback
net: aquantia: Update hw counters on hw init
net: aquantia: Fix typo in ethtool statistics names
net: aquantia: Increment driver version

Ingo Molnar (4):
locking/lockdep: Remove the cross-release locking checks
objtool: Resync objtool's instruction decoder source code copy
with the kernel's latest version
tools/headers: Synchronize kernel <-> tooling headers
drivers/misc/intel/pti: Rename the header file to free up the namespace

Jan Beulich (2):
x86/Xen: don't report ancient LAPIC version
xen: XEN_ACPI_PROCESSOR is Dom0-only

Jann Horn (1):
netfilter: xt_bpf: add overflow checks

Jason Yan (1):
scsi: libsas: fix length error in sas_smp_handler()

Jay Elliott (1):
netfilter: conntrack: clamp timeouts to INT_MAX

Jean Delvare (1):
i2c: piix4: Fix port number check on release

Jerome Brunet (1):
net: phy: meson-gxl: detect LPA corruption

Jia-Ju Bai (1):
hippi: Fix a Fix a possible sleep-in-atomic bug in rr_close

Jie Deng (1):
dwc-xlgmac: Add co-maintainer

Jiri Pirko (2):
net: sched: fix clsact init error path
net: sched: fix static key imbalance in case of ingress/clsact_init error

Johannes Berg (3):
wireless: replace usage of hexdump with od/sed
wireless: don't write C files on failures
mac80211: fix locking in ieee80211_sta_tear_down_BA_sessions

Johannes Thumshirn (2):
scsi: bfa: fix access to bfad_im_port_s
scsi: MAINTAINERS: change FCoE list to linux-scsi

Jon Maloy (1):
tipc: eliminate potential memory leak

Julian Wiedmann (4):
s390/qeth: apply takeover changes when mode is toggled
s390/qeth: don't apply takeover changes to RXIP
s390/qeth: lock IP table while applying takeover changes
s390/qeth: update takeover IPs after configuration change

Julien BOIBESSOT (1):
tools/usbip: fixes potential (minor) "buffer overflow" (detected
on recent gcc with -Werror)

Karol Herbst (1):
x86/mm/kmmio: Fix mmiotrace for page unaligned addresses

Kees Cook (1):
Revert "exec: avoid RLIMIT_STACK races with prlimit()"

Keith Packard (1):
drm: Update edid-derived drm_display_info fields at edid property set [v2]

Kevin Cernekee (4):
netfilter: nfnetlink_cthelper: Add missing permission checks
netfilter: xt_osf: Add missing permission checks
netlink: Add netns check on taps
net: igmp: Use correct source address on IGMPv3 reports

Kirill A. Shutemov (2):
x86/boot/compressed/64: Detect and handle 5-level paging at boot-time
x86/boot/compressed/64: Print error if 5-level paging is not supported

Konstantin Khlebnikov (1):
netfilter: ip6t_MASQUERADE: add dependency on conntrack module

Lai Jiangshan (2):
workqueue/hotplug: simplify workqueue_offline_cpu()
workqueue/hotplug: remove the workaround in rebind_workers()

Leon Romanovsky (1):
RDMA/netlink: Fix general protection fault

Linus Torvalds (2):
Revert "mm: replace p??_write with pte_access_permitted in fault
+ gup paths"
Linux 4.15-rc4

Liu, Changcheng (2):
scripts/faddr2line: fix CROSS_COMPILE unset error
tools/slabinfo-gnuplot: force to use bash shell

Lucas Stach (2):
cgroup: properly init u64_stats
mm/page_alloc.c: avoid excessive IRQ disabled times in
free_unref_page_list()

Manu Gautam (1):
usb: dwc3: gadget: Fix PCM1 for ISOC EP with ep->mult less than 3

Marcus Wolf (1):
staging: pi433: Fixes issue with bit shift in rf69_get_modulation

Marius Vlad (1):
drm/drm_lease: Prevent deadlock in case drm_lease_create() fails

Mark Rutland (6):
tools/perf: Convert ACCESS_ONCE() to READ_ONCE()
tools/include: Remove ACCESS_ONCE()
compiler.h: Remove ACCESS_ONCE()
checkpatch: Remove ACCESS_ONCE() warning
arm64: fix CONFIG_DEBUG_WX address reporting
virtio_mmio: fix devm cleanup

Markus Trippelsdorf (1):
VFS: Handle lazytime in do_mount()

Martin Wilck (3):
scsi: libfc: fix ELS request handling
scsi: scsi_devinfo: handle non-terminated strings
scsi: scsi_devinfo: cleanly zero-pad devinfo strings

Masahiro Yamada (1):
usb: dwc3: of-simple: set dev_pm_ops

Masamitsu Yamazaki (1):
ipmi: Stop timers before cleaning up the module

Mathias Nyman (1):
xhci: Don't add a virt_dev to the devs array before it's fully allocated

Matthias Brugger (1):
ahci: mtk: Change driver name to ahci-mtk

Matthias Kaehlcke (1):
ring-buffer: Remove unused function __rb_data_page_index()

Mengting Zhang (1):
tools/lib/lockdep: Add missing declaration of 'pr_cont()'

Michael S. Tsirkin (2):
ptr_ring: fix up after recent ptr_ring changes
ptr_ring: add barriers

Michal Hocko (1):
mm, oom_reaper: fix memory corruption

Mike Snitzer (2):
dm table: fix regression from improper dm_dev_internal.count
refcount_t conversion
dm mpath: fix bio-based multipath queue_if_no_path handling

Miklos Szeredi (1):
ovl: don't follow redirects if redirect_dir=off

Mikulas Patocka (1):
ipmi_si: fix crash on parisc

Minas Harutyunyan (1):
usb: dwc2: Fix TxFIFOn sizes and total TxFIFO size issues

Ming Lei (1):
scsi: core: run queue if SCSI device queue isn't ready and queue is idle

Mohamed Ghannam (1):
net: ipv4: fix for a race condition in raw_sendmsg

NeilBrown (1):
autofs: fix careless error in recent commit

Nicolas Pitre (1):
percpu: hack to let the CRIS architecture to boot until they clean up

Pali RohÃr (1):
platform/x86: dell-laptop: Fix keyboard max lighting for Dell
Latitude E6410

Palmer Dabbelt (2):
RISC-V: Resurrect smp_mb__after_spinlock()
RISC-V: Remove unused CONFIG_HVC_RISCV_SBI code

Peter Hutterer (1):
platform/x86: asus-wireless: send an EV_SYN/SYN_REPORT between
state changes

Prarit Bhargava (1):
x86/smpboot: Do not use smp_num_siblings in
__max_logical_packages calculation

Prateek Sood (2):
cgroup/cpuset: remove circular dependency deadlock
cpuset: Make cpuset hotplug synchronous

Pravin Shedge (2):
fs: xfs: remove duplicate includes
net: remove duplicate includes

Rafael J. Wysocki (1):
PM / sleep: Avoid excess pm_runtime_enable() calls in device_resume()

Randy Dunlap (3):
PCI: Add pci_get_domain_bus_and_slot() stub
sched/core: Fix kernel-doc warnings after code movement
x86/decoder: Fix and update the opcodes map

Ricardo Neri (1):
x86/cpufeature: Add User-Mode Instruction Prevention definitions

Ronnie Sahlberg (1):
cifs: fix NULL deref in SMB2_read

Rudolf Marek (1):
x86: Make X86_BUG_FXSAVE_LEAK detectable in CPUID on AMD

Russell King (5):
net: dsa: allow XAUI phy interface mode
ARM: dts: vf610-zii-dev: use XAUI for DSA link ports
net: phy: fix resume handling
of_mdio / mdiobus: ensure mdio devices have fwnode correctly populated
net: phy: marvell: avoid configuring fiber page for SGMII-to-Copper

Sakari Ailus (1):
eeprom: at24: fix I2C device selection for runtime PM

Scott Mayhew (2):
nfs: fix a deadlock in nfs client initialization
nfs: don't wait on commit in nfs_commit_inode() if there were no
commit requests

Sebastian Sjoholm (1):
net: qmi_wwan: add Sierra EM7565 1199:9091

Sergey Senozhatsky (1):
workqueue: remove unneeded kallsyms include

Shanker Donthineni (2):
arm64: Define cputype macros for Falkor CPU
arm64: Add software workaround for Falkor erratum 1041

Shuah Khan (4):
usbip: fix stub_rx: get_pipe() to validate endpoint number
usbip: fix stub_rx: harden CMD_SUBMIT path to handle malicious input
usbip: prevent vhci_hcd driver from leaking a socket pointer address
usbip: fix stub_send_ret_submit() vulnerability to null transfer_buffer

Srividya Desireddy (1):
Documentation/vm/zswap.txt: update with same-value filled page feature

Stefan Schake (1):
drm/vc4: Release fence after signalling

Stephen Hemminger (1):
skge: remove redundunt free_irq under spinlock

Steve Capper (2):
arm64: Initialise high_memory global variable earlier
arm64: mm: Fix pte_mkclean, pte_mkdirty semantics

Steve Wise (2):
iw_cxgb4: only clear the ARMED bit if a notification is needed
iw_cxgb4: only insert drain cqes if wq is flushed

Steven Rostedt (1):
sched/rt: Do not pull from current CPU if only one CPU to pull

Steven Rostedt (VMware) (1):
tracing: Have stack trace not record if RCU is not watching

Sudip Mukherjee (1):
arch: define weak abort()

Suren Baghdasaryan (1):
dm bufio: fix shrinker scans when (nr_to_scan < retain_target)

Sven Eckelmann (4):
batman-adv: Always initialize fragment header priority
batman-adv: Fix check of retrieved orig_gw in batadv_v_gw_is_eligible
batman-adv: Fix kernel-doc for timer functions
batman-adv: Fix lock for ogm cnt access in batadv_iv_ogm_calc_tq

Tal Shorer (2):
main: kernel_start: move housekeeping_init() before workqueue_init_early()
workqueue: respect isolated cpus when queueing an unbound work

Tejun Heo (3):
Revert "cpuset: Make cpuset hotplug synchronous"
Revert "cgroup/cpuset: remove circular dependency deadlock"
cgroup: add warning about RT not being supported on cgroup2

Theodore Ts'o (1):
ext4: add missing error check in __ext4_new_inode()

Thiago Rafael Becker (1):
kernel: make groups_sort calling a responsibility group_info allocators

Thomas Gleixner (1):
posix-timer: Properly check sigevent->sigev_notify

Thomas Petazzoni (1):
net: sh_eth: do not advertise Gigabit capabilities when not available

Tobias Jordan (1):
dmaengine: jz4740: disable/unprepare clk if probe fails

Trond Myklebust (1):
SUNRPC: Fix a race in the receive code path

Vasily Averin (1):
netfilter: exit_net cleanup check added

Vasyl Gomonovych (1):
ovl: Use PTR_ERR_OR_ZERO()

Vincent Pelletier (1):
usb: dwc3: gadget: Wait longer for controller to end command processing

Vivek Goyal (1):
ovl: Pass ovl_get_nlink() parameters in right order

Wang Long (1):
debug cgroup: use task_css_set instead of rcu_dereference

Wei Wang (2):
tcp: fix potential underestimation on rcv_rtt
include/linux/idr.h: add #include <linux/bug.h>

Will Deacon (7):
locking/core: Fix deadlock during boot on systems with GENERIC_LOCKBREAK
locking/core: Remove break_lock field when CONFIG_GENERIC_LOCKBREAK=y
arm64: mm: Fix false positives in set_pte_at access/dirty race detection
arm64: hw_breakpoint: Use linux/uaccess.h instead of asm/uaccess.h
arm64: fpsimd: Fix copying of FP state from signal frame into task struct
locking/barriers: Add implicit smp_read_barrier_depends() to READ_ONCE()
locking/barriers: Convert users of lockless_dereference() to READ_ONCE()

Willem de Bruijn (1):
sock: free skb in skb_complete_tx_timestamp on error

Wolfram Sang (1):
mmc: core: properly init drv_type

Xin Long (2):
sctp: make sure stream nums can match optlen in
sctp_setsockopt_reset_streams
fou: fix some member types in guehdr

Yan, Zheng (1):
ceph: drop negative child dentries before try pruning inode's alias

Yuantian Tang (1):
ahci: qoriq: refine port register configuration

Yuval Mintz (4):
mlxsw: spectrum: Disable MAC learning for ovs port
net: sched: Add TCA_HW_OFFLOAD
net: sched: Move to new offload indication in RED
pkt_sched: Remove TC_RED_OFFLOADED from uapi

Yuval Shaia (1):
IB/ipoib: Restore MM behavior in case of tx_ring allocation failure

monty_pavel@xxxxxxxx (1):
dm: fix various targets to dm_register_target after module
__init resources created