Way back in 2017, fuzzing the 4.14-rc2 USB stack with syzkaller kicked
up the following WARNING from the UVC chain scanning code:
| list_add double add: new=ffff880069084010, prev=ffff880069084010,
| next=ffff880067d22298.
| ------------[ cut here ]------------
| WARNING: CPU: 1 PID: 1846 at lib/list_debug.c:31 __list_add_valid+0xbd/0xf0
| Modules linked in:
| CPU: 1 PID: 1846 Comm: kworker/1:2 Not tainted
| 4.14.0-rc2-42613-g1488251d1a98 #238
| Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Bochs 01/01/2011
| Workqueue: usb_hub_wq hub_event
| task: ffff88006b01ca40 task.stack: ffff880064358000
| RIP: 0010:__list_add_valid+0xbd/0xf0 lib/list_debug.c:29
| RSP: 0018:ffff88006435ddd0 EFLAGS: 00010286
| RAX: 0000000000000058 RBX: ffff880067d22298 RCX: 0000000000000000
| RDX: 0000000000000058 RSI: ffffffff85a58800 RDI: ffffed000c86bbac
| RBP: ffff88006435dde8 R08: 1ffff1000c86ba52 R09: 0000000000000000
| R10: 0000000000000002 R11: 0000000000000000 R12: ffff880069084010
| R13: ffff880067d22298 R14: ffff880069084010 R15: ffff880067d222a0
| FS: 0000000000000000(0000) GS:ffff88006c900000(0000) knlGS:0000000000000000
| CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
| CR2: 0000000020004ff2 CR3: 000000006b447000 CR4: 00000000000006e0
| Call Trace:
| __list_add ./include/linux/list.h:59
| list_add_tail+0x8c/0x1b0 ./include/linux/list.h:92
| uvc_scan_chain_forward.isra.8+0x373/0x416
| drivers/media/usb/uvc/uvc_driver.c:1471
| uvc_scan_chain drivers/media/usb/uvc/uvc_driver.c:1585
| uvc_scan_device drivers/media/usb/uvc/uvc_driver.c:1769
| uvc_probe+0x77f2/0x8f00 drivers/media/usb/uvc/uvc_driver.c:2104
Looking into the output from usbmon, the interesting part is the
following data packet:
ffff880069c63e00 30710169 C Ci:1:002:0 0 143 = 09028f00 01030080
00090403 00000e01 00000924 03000103 7c003328 010204db
If we drop the lead configuration and interface descriptors, we're left
with an output terminal descriptor describing a generic display:
/* Output terminal descriptor */
buf[0] 09
buf[1] 24
buf[2] 03 /* UVC_VC_OUTPUT_TERMINAL */
buf[3] 00 /* ID */
buf[4] 01 /* type == 0x0301 (UVC_OTT_DISPLAY) */
buf[5] 03
buf[6] 7c
buf[7] 00 /* source ID refers to self! */
buf[8] 33
The problem with this descriptor is that it is self-referential: the
source ID of 0 matches itself! This causes the 'struct uvc_entity'
representing the display to be added to its chain list twice during
'uvc_scan_chain()': once via 'uvc_scan_chain_entity()' when it is
processed directly from the 'dev->entities' list and then again
immediately afterwards when trying to follow the source ID in
'uvc_scan_chain_forward()'
Add a check before adding an entity to a chain list to ensure that the
entity is not already part of a chain.
Cc: Laurent Pinchart <laurent.pinchart(a)ideasonboard.com>
Cc: Mauro Carvalho Chehab <mchehab(a)kernel.org>
Cc: Dmitry Vyukov <dvyukov(a)google.com>
Cc: Kostya Serebryany <kcc(a)google.com>
Cc: <stable(a)vger.kernel.org>
Fixes: c0efd232929c ("V4L/DVB (8145a): USB Video Class driver")
Reported-by: Andrey Konovalov <andreyknvl(a)google.com>
Link: https://lore.kernel.org/linux-media/CAAeHK+z+Si69jUR+N-SjN9q4O+o5KFiNManqEa…
Signed-off-by: Will Deacon <will(a)kernel.org>
---
I don't have a way to reproduce the original issue, so this change is
based purely on inspection. Considering I'm not familiar with USB nor
UVC, I may well have missed something!
drivers/media/usb/uvc/uvc_driver.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/media/usb/uvc/uvc_driver.c b/drivers/media/usb/uvc/uvc_driver.c
index 66ee168ddc7e..e24420b1750a 100644
--- a/drivers/media/usb/uvc/uvc_driver.c
+++ b/drivers/media/usb/uvc/uvc_driver.c
@@ -1493,6 +1493,11 @@ static int uvc_scan_chain_forward(struct uvc_video_chain *chain,
break;
if (forward == prev)
continue;
+ if (forward->chain.next || forward->chain.prev) {
+ uvc_trace(UVC_TRACE_DESCR, "Found reference to "
+ "entity %d already in chain.\n", forward->id);
+ return -EINVAL;
+ }
switch (UVC_ENTITY_TYPE(forward)) {
case UVC_VC_EXTENSION_UNIT:
@@ -1574,6 +1579,13 @@ static int uvc_scan_chain_backward(struct uvc_video_chain *chain,
return -1;
}
+ if (term->chain.next || term->chain.prev) {
+ uvc_trace(UVC_TRACE_DESCR, "Found reference to "
+ "entity %d already in chain.\n",
+ term->id);
+ return -EINVAL;
+ }
+
if (uvc_trace_param & UVC_TRACE_PROBE)
printk(KERN_CONT " %d", term->id);
--
2.23.0.444.g18eeb5a265-goog
This is the start of the stable review cycle for the 4.9.196 release.
There are 47 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Tue 08 Oct 2019 05:19:59 PM UTC.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.196-rc…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 4.9.196-rc1
Andrey Konovalov <andreyknvl(a)google.com>
NFC: fix attrs checks in netlink interface
Eric Biggers <ebiggers(a)google.com>
smack: use GFP_NOFS while holding inode_smack::smk_lock
Jann Horn <jannh(a)google.com>
Smack: Don't ignore other bprm->unsafe flags if LSM_UNSAFE_PTRACE is set
David Ahern <dsahern(a)gmail.com>
ipv6: Handle missing host route in __ipv6_ifa_notify
Eric Dumazet <edumazet(a)google.com>
sch_cbq: validate TCA_CBQ_WRROPT to avoid crash
Dongli Zhang <dongli.zhang(a)oracle.com>
xen-netfront: do not use ~0U as error return value for xennet_fill_frags()
Dotan Barak <dotanb(a)dev.mellanox.co.il>
net/rds: Fix error handling in rds_ib_add_one()
Eric Dumazet <edumazet(a)google.com>
sch_dsmark: fix potential NULL deref in dsmark_init()
Reinhard Speyerer <rspmn(a)arcor.de>
qmi_wwan: add support for Cinterion CLS8 devices
Eric Dumazet <edumazet(a)google.com>
nfc: fix memory leak in llcp_sock_bind()
Martin KaFai Lau <kafai(a)fb.com>
net: Unpublish sk from sk_reuseport_cb before call_rcu
Navid Emamdoost <navid.emamdoost(a)gmail.com>
net: qlogic: Fix memory leak in ql_alloc_large_buffers
Paolo Abeni <pabeni(a)redhat.com>
net: ipv4: avoid mixed n_redirects and rate_tokens usage
Eric Dumazet <edumazet(a)google.com>
ipv6: drop incoming packets having a v4mapped source address
Johan Hovold <johan(a)kernel.org>
hso: fix NULL-deref on tty open
Vishal Kulkarni <vishal(a)chelsio.com>
cxgb4:Fix out-of-bounds MSI-X info array access
Martijn Coenen <maco(a)android.com>
ANDROID: binder: synchronize_rcu() when using POLLFREE.
Martijn Coenen <maco(a)android.com>
ANDROID: binder: remove waitqueue when thread exits.
Nicolas Boichat <drinkcat(a)chromium.org>
kmemleak: increase DEBUG_KMEMLEAK_EARLY_LOG_SIZE default to 16K
Changwei Ge <gechangwei(a)live.cn>
ocfs2: wait for recovering done after direct unlock request
David Howells <dhowells(a)redhat.com>
hypfs: Fix error number left in struct pointer member
OGAWA Hirofumi <hirofumi(a)mail.parknet.co.jp>
fat: work around race with userspace's read via blockdev while mounting
Mike Rapoport <mike.rapoport(a)gmail.com>
ARM: 8903/1: ensure that usable memory in bank 0 starts from a PMD-aligned address
Jia-Ju Bai <baijiaju1990(a)gmail.com>
security: smack: Fix possible null-pointer dereferences in smack_socket_sock_rcv_skb()
Joao Moreno <mail(a)joaomoreno.com>
HID: apple: Fix stuck function keys when using FN
Will Deacon <will(a)kernel.org>
ARM: 8898/1: mm: Don't treat faults reported from cache maintenance as writes
Nishka Dasgupta <nishkadg.linux(a)gmail.com>
PCI: tegra: Fix OF node reference leak
Kai-Heng Feng <kai.heng.feng(a)canonical.com>
mfd: intel-lpss: Remove D3cold delay
Nathan Chancellor <natechancellor(a)gmail.com>
MIPS: tlbex: Explicitly cast _PAGE_NO_EXEC to a boolean
Bart Van Assche <bvanassche(a)acm.org>
scsi: core: Reduce memory required for SCSI logging
Eugen Hristev <eugen.hristev(a)microchip.com>
clk: at91: select parent if main oscillator or bypass is enabled
Arnd Bergmann <arnd(a)arndb.de>
arm64: fix unreachable code issue with cmpxchg
Nathan Lynch <nathanl(a)linux.ibm.com>
powerpc/pseries: correctly track irq state in default idle
Nicholas Piggin <npiggin(a)gmail.com>
powerpc/64s/exception: machine check use correct cfar for late handler
Jean Delvare <jdelvare(a)suse.de>
drm/amdgpu/si: fix ASIC tests
hexin <hexin.op(a)gmail.com>
vfio_pci: Restore original state on release
Sowjanya Komatineni <skomatineni(a)nvidia.com>
pinctrl: tegra: Fix write barrier placement in pmx_writel
Nathan Lynch <nathanl(a)linux.ibm.com>
powerpc/pseries/mobility: use cond_resched when updating device tree
Christophe Leroy <christophe.leroy(a)c-s.fr>
powerpc/futex: Fix warning: 'oldval' may be used uninitialized in this function
Nathan Lynch <nathanl(a)linux.ibm.com>
powerpc/rtas: use device model APIs and serialization during LPM
Stephen Boyd <sboyd(a)kernel.org>
clk: sirf: Don't reference clk_init_data after registration
Nathan Huckleberry <nhuck(a)google.com>
clk: qoriq: Fix -Wunused-const-variable
Corey Minyard <cminyard(a)mvista.com>
ipmi_si: Only schedule continuously in the thread in maintenance mode
Jia-Ju Bai <baijiaju1990(a)gmail.com>
gpu: drm: radeon: Fix a possible null-pointer dereference in radeon_connector_set_property()
KyleMahlkuch <kmahlkuc(a)linux.vnet.ibm.com>
drm/radeon: Fix EEH during kexec
Marko Kohtala <marko.kohtala(a)okoko.fi>
video: ssd1307fb: Start page range at page_offset
Andrey Smirnov <andrew.smirnov(a)gmail.com>
drm/bridge: tc358767: Increase AUX transfer length limit
-------------
Diffstat:
Makefile | 4 +--
arch/arm/mm/fault.c | 4 +--
arch/arm/mm/fault.h | 1 +
arch/arm/mm/mmu.c | 16 +++++++++
arch/arm64/include/asm/cmpxchg.h | 6 ++--
arch/mips/mm/tlbex.c | 2 +-
arch/powerpc/include/asm/futex.h | 3 +-
arch/powerpc/kernel/exceptions-64s.S | 4 +++
arch/powerpc/kernel/rtas.c | 11 ++++--
arch/powerpc/platforms/pseries/mobility.c | 9 +++++
arch/powerpc/platforms/pseries/setup.c | 3 ++
arch/s390/hypfs/inode.c | 9 ++---
drivers/android/binder.c | 26 +++++++++++++-
drivers/char/ipmi/ipmi_si_intf.c | 24 ++++++++++---
drivers/clk/at91/clk-main.c | 10 ++++--
drivers/clk/clk-qoriq.c | 2 +-
drivers/clk/sirf/clk-common.c | 12 ++++---
drivers/gpu/drm/amd/amdgpu/si.c | 6 ++--
drivers/gpu/drm/bridge/tc358767.c | 2 +-
drivers/gpu/drm/radeon/radeon_connectors.c | 2 +-
drivers/gpu/drm/radeon/radeon_drv.c | 8 +++++
drivers/hid/hid-apple.c | 49 +++++++++++++++-----------
drivers/mfd/intel-lpss-pci.c | 2 ++
drivers/net/ethernet/chelsio/cxgb4/cxgb4_uld.c | 9 +++--
drivers/net/ethernet/qlogic/qla3xxx.c | 1 +
drivers/net/usb/hso.c | 12 ++++---
drivers/net/usb/qmi_wwan.c | 1 +
drivers/net/xen-netfront.c | 17 ++++-----
drivers/pci/host/pci-tegra.c | 22 ++++++++----
drivers/pinctrl/tegra/pinctrl-tegra.c | 4 ++-
drivers/scsi/scsi_logging.c | 48 ++-----------------------
drivers/vfio/pci/vfio_pci.c | 17 ++++++---
drivers/video/fbdev/ssd1307fb.c | 2 +-
fs/fat/dir.c | 13 +++++--
fs/fat/fatent.c | 3 ++
fs/ocfs2/dlm/dlmunlock.c | 23 +++++++++---
include/scsi/scsi_dbg.h | 2 --
lib/Kconfig.debug | 2 +-
net/core/sock.c | 11 ++++--
net/ipv4/route.c | 5 ++-
net/ipv6/addrconf.c | 17 ++++++---
net/ipv6/ip6_input.c | 10 ++++++
net/nfc/llcp_sock.c | 7 +++-
net/nfc/netlink.c | 6 ++--
net/rds/ib.c | 6 ++--
net/sched/sch_cbq.c | 27 +++++++++++---
net/sched/sch_dsmark.c | 2 ++
security/smack/smack_access.c | 4 +--
security/smack/smack_lsm.c | 7 ++--
49 files changed, 328 insertions(+), 165 deletions(-)
This is the start of the stable review cycle for the 4.14.151 release.
There are 119 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Tue 29 Oct 2019 08:27:02 PM UTC.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.14.151-r…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.14.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 4.14.151-rc1
Greg KH <gregkh(a)linuxfoundation.org>
RDMA/cxgb4: Do not dma memory off of the stack
Jim Mattson <jmattson(a)google.com>
kvm: vmx: Basic APIC virtualization controls have three settings
Junaid Shahid <junaids(a)google.com>
kvm: apic: Flush TLB after APIC mode/address change if VPIDs are in use
Jim Mattson <jmattson(a)google.com>
kvm: vmx: Introduce lapic_mode enumeration
Wanpeng Li <wanpeng.li(a)hotmail.com>
KVM: X86: introduce invalidate_gpa argument to tlb flush
Rafael J. Wysocki <rafael.j.wysocki(a)intel.com>
PCI: PM: Fix pci_power_up()
Juergen Gross <jgross(a)suse.com>
xen/netback: fix error path of xenvif_connect_data()
Rafael J. Wysocki <rafael.j.wysocki(a)intel.com>
cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown
Christophe JAILLET <christophe.jaillet(a)wanadoo.fr>
memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()'
Qu Wenruo <wqu(a)suse.com>
btrfs: block-group: Fix a memory leak due to missing btrfs_put_block_group()
Patrick Williams <alpawi(a)amazon.com>
pinctrl: armada-37xx: swap polarity on LED group
Patrick Williams <alpawi(a)amazon.com>
pinctrl: armada-37xx: fix control of pins 32 and up
Steve Wahl <steve.wahl(a)hpe.com>
x86/boot/64: Make level2_kernel_pgt pages invalid outside kernel area
Roberto Bergantinos Corpas <rbergant(a)redhat.com>
CIFS: avoid using MID 0xFFFF
Helge Deller <deller(a)gmx.de>
parisc: Fix vmap memory leak in ioremap()/iounmap()
Max Filippov <jcmvbkbc(a)gmail.com>
xtensa: drop EXPORT_SYMBOL for outs*/ins*
David Hildenbrand <david(a)redhat.com>
hugetlbfs: don't access uninitialized memmaps in pfn_range_valid_gigantic()
Qian Cai <cai(a)lca.pw>
mm/page_owner: don't access uninitialized memmaps when reading /proc/pagetypeinfo
Qian Cai <cai(a)lca.pw>
mm/slub: fix a deadlock in show_slab_objects()
Steffen Maier <maier(a)linux.ibm.com>
scsi: zfcp: fix reaction on bit error threshold notification
David Hildenbrand <david(a)redhat.com>
fs/proc/page.c: don't access uninitialized memmaps in fs/proc/page.c
David Hildenbrand <david(a)redhat.com>
drivers/base/memory.c: don't access uninitialized memmaps in soft_offline_page_store()
Hans de Goede <hdegoede(a)redhat.com>
drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1
Kai-Heng Feng <kai.heng.feng(a)canonical.com>
drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50
Will Deacon <will(a)kernel.org>
mac80211: Reject malformed SSID elements
Will Deacon <will(a)kernel.org>
cfg80211: wext: avoid copying malformed SSIDs
Junya Monden <jmonden(a)jp.adit-jv.com>
ASoC: rsnd: Reinitialize bit clock inversion flag for every format setting
Evan Green <evgreen(a)chromium.org>
Input: synaptics-rmi4 - avoid processing unknown IRQs
Marco Felsch <m.felsch(a)pengutronix.de>
Input: da9063 - fix capability and drop KEY_SLEEP
Bart Van Assche <bvanassche(a)acm.org>
scsi: ch: Make it possible to open a ch device multiple times again
Yufen Yu <yuyufen(a)huawei.com>
scsi: core: try to get module before removing device
Damien Le Moal <damien.lemoal(a)wdc.com>
scsi: core: save/restore command resid for error handling
Oliver Neukum <oneukum(a)suse.com>
scsi: sd: Ignore a failure to sync cache due to lack of authorization
Colin Ian King <colin.king(a)canonical.com>
staging: wlan-ng: fix exit return when sme->key_idx >= NUM_WEPKEYS
Paul Burton <paulburton(a)kernel.org>
MIPS: tlbex: Fix build_restore_pagemask KScratch restore
Josh Poimboeuf <jpoimboe(a)redhat.com>
arm64/speculation: Support 'mitigations=' cmdline option
Marc Zyngier <marc.zyngier(a)arm.com>
arm64: Use firmware to detect CPUs that are not affected by Spectre-v2
Marc Zyngier <marc.zyngier(a)arm.com>
arm64: Force SSBS on context switch
Will Deacon <will.deacon(a)arm.com>
arm64: ssbs: Don't treat CPUs with SSBS as unaffected by SSB
Jeremy Linton <jeremy.linton(a)arm.com>
arm64: add sysfs vulnerability show for speculative store bypass
Jeremy Linton <jeremy.linton(a)arm.com>
arm64: add sysfs vulnerability show for spectre-v2
Jeremy Linton <jeremy.linton(a)arm.com>
arm64: Always enable spectre-v2 vulnerability detection
Marc Zyngier <marc.zyngier(a)arm.com>
arm64: Advertise mitigation of Spectre-v2, or lack thereof
Jeremy Linton <jeremy.linton(a)arm.com>
arm64: Provide a command line to disable spectre_v2 mitigation
Jeremy Linton <jeremy.linton(a)arm.com>
arm64: Always enable ssb vulnerability detection
Mian Yousaf Kaukab <ykaukab(a)suse.de>
arm64: enable generic CPU vulnerabilites support
Jeremy Linton <jeremy.linton(a)arm.com>
arm64: add sysfs vulnerability show for meltdown
Mian Yousaf Kaukab <ykaukab(a)suse.de>
arm64: Add sysfs vulnerability show for spectre-v1
Mark Rutland <mark.rutland(a)arm.com>
arm64: fix SSBS sanitization
Will Deacon <will.deacon(a)arm.com>
KVM: arm64: Set SCTLR_EL2.DSSBS if SSBD is forcefully disabled and !vhe
Will Deacon <will.deacon(a)arm.com>
arm64: ssbd: Add support for PSTATE.SSBS rather than trapping to EL3
Will Deacon <will.deacon(a)arm.com>
arm64: cpufeature: Detect SSBS and advertise to userspace
Marc Zyngier <marc.zyngier(a)arm.com>
arm64: Get rid of __smccc_workaround_1_hvc_*
Mark Rutland <mark.rutland(a)arm.com>
arm64: don't zero DIT on signal return
Shanker Donthineni <shankerd(a)codeaurora.org>
arm64: KVM: Use SMCCC_ARCH_WORKAROUND_1 for Falkor BP hardening
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Add support for checks based on a list of MIDRs
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: Add MIDR encoding for Arm Cortex-A55 and Cortex-A35
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: Add helpers for checking CPU MIDR against a range
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Clean up midr range helpers
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Change scope of VHE to Boot CPU feature
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Add support for features enabled early
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Restrict KPTI detection to boot-time CPUs
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Introduce weak features based on local CPU
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Group handling of features and errata workarounds
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Allow features based on local CPU scope
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Split the processing of errata work arounds
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Prepare for grouping features and errata work arounds
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Filter the entries based on a given mask
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Unify the verification
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Add flags to handle the conflicts on late CPU
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Prepare for fine grained capabilities
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Move errata processing code
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: capabilities: Move errata work around check on boot CPU
Dave Martin <dave.martin(a)arm.com>
arm64: capabilities: Update prototype for enable call back
Mark Rutland <mark.rutland(a)arm.com>
arm64: Introduce sysreg_clear_set()
Mark Rutland <mark.rutland(a)arm.com>
arm64: add PSR_AA32_* definitions
Mark Rutland <mark.rutland(a)arm.com>
arm64: move SCTLR_EL{1,2} assertions to <asm/sysreg.h>
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: Expose Arm v8.4 features
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: Documentation: cpu-feature-registers: Remove RES0 fields
Dongjiu Geng <gengdongjiu(a)huawei.com>
arm64: v8.4: Support for new floating point multiplication instructions
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: Fix the feature type for ID register fields
Suzuki K Poulose <suzuki.poulose(a)arm.com>
arm64: Expose support for optional ARMv8-A features
James Morse <james.morse(a)arm.com>
arm64: sysreg: Move to use definitions for all the SCTLR bits
Johan Hovold <johan(a)kernel.org>
USB: ldusb: fix read info leaks
Johan Hovold <johan(a)kernel.org>
USB: usblp: fix use-after-free on disconnect
Johan Hovold <johan(a)kernel.org>
USB: ldusb: fix memleak on disconnect
Johan Hovold <johan(a)kernel.org>
USB: serial: ti_usb_3410_5052: fix port-close races
Gustavo A. R. Silva <gustavo(a)embeddedor.com>
usb: udc: lpc32xx: fix bad bit shift operation
Kailang Yang <kailang(a)realtek.com>
ALSA: hda/realtek - Add support for ALC711
Johan Hovold <johan(a)kernel.org>
USB: legousbtower: fix memleak on disconnect
Matthew Wilcox (Oracle) <willy(a)infradead.org>
memfd: Fix locking when tagging pins
Alessio Balsini <balsini(a)android.com>
loop: Add LOOP_SET_DIRECT_IO to compat ioctl
Jiaxun Yang <jiaxun.yang(a)flygoat.com>
MIPS: elf_hwcap: Export userspace ASEs
Jiaxun Yang <jiaxun.yang(a)flygoat.com>
MIPS: Treat Loongson Extensions as ASEs
Eric Dumazet <edumazet(a)google.com>
net: avoid potential infinite loop in tc_ctl_action()
Xin Long <lucien.xin(a)gmail.com>
sctp: change sctp_prot .no_autobind with true
Biao Huang <biao.huang(a)mediatek.com>
net: stmmac: disable/enable ptp_ref_clk in suspend/resume flow
Thomas Bogendoerfer <tbogendoerfer(a)suse.de>
net: i82596: fix dma_alloc_attr for sni_82596
Florian Fainelli <f.fainelli(a)gmail.com>
net: bcmgenet: Set phydev->dev_flags only for internal PHYs
Florian Fainelli <f.fainelli(a)gmail.com>
net: bcmgenet: Fix RGMII_MODE_EN value for GENET v1/2/3
Stefano Brivio <sbrivio(a)redhat.com>
ipv4: Return -ENETUNREACH if we can't create route but saddr is valid
Yi Li <yilikernel(a)gmail.com>
ocfs2: fix panic due to ocfs2_wq is null
Alex Deucher <alexander.deucher(a)amd.com>
Revert "drm/radeon: Fix EEH during kexec"
Song Liu <songliubraving(a)fb.com>
md/raid0: fix warning message for parameter default_layout
Jacob Keller <jacob.e.keller(a)intel.com>
namespace: fix namespace.pl script to support relative paths
Kai-Heng Feng <kai.heng.feng(a)canonical.com>
r8152: Set macpassthru in reset_resume callback
Yizhuo <yzhai003(a)ucr.edu>
net: hisilicon: Fix usage of uninitialized variable in function mdio_sc_cfg_reg_write()
Christophe JAILLET <christophe.jaillet(a)wanadoo.fr>
mips: Loongson: Fix the link time qualifier of 'serial_exit()'
Miaoqing Pan <miaoqing(a)codeaurora.org>
mac80211: fix txq null pointer dereference
Miaoqing Pan <miaoqing(a)codeaurora.org>
nl80211: fix null pointer dereference
Ross Lagerwall <ross.lagerwall(a)citrix.com>
xen/efi: Set nonblocking callbacks
Oleksij Rempel <o.rempel(a)pengutronix.de>
MIPS: dts: ar9331: fix interrupt-controller size
Michal Vokáč <michal.vokac(a)ysoft.com>
net: dsa: qca8k: Use up to 7 ports for all operations
Peter Ujfalusi <peter.ujfalusi(a)ti.com>
ARM: dts: am4372: Set memory bandwidth limit for DISPC
Navid Emamdoost <navid.emamdoost(a)gmail.com>
ieee802154: ca8210: prevent memory leak
Tony Lindgren <tony(a)atomide.com>
ARM: OMAP2+: Fix missing reset done flag for am3 and am43
Quinn Tran <qutran(a)marvell.com>
scsi: qla2xxx: Fix unbound sleep in fcport delete path.
Xiang Chen <chenxiang66(a)hisilicon.com>
scsi: megaraid: disable device when probe failed after enabled device
Stanley Chu <stanley.chu(a)mediatek.com>
scsi: ufs: skip shutdown if hba is not powered
-------------
Diffstat:
Documentation/admin-guide/kernel-parameters.txt | 16 +-
Documentation/arm64/cpu-feature-registers.txt | 26 +-
Makefile | 4 +-
arch/arm/boot/dts/am4372.dtsi | 2 +
.../mach-omap2/omap_hwmod_33xx_43xx_ipblock_data.c | 3 +-
arch/arm/xen/efi.c | 2 +
arch/arm64/Kconfig | 1 +
arch/arm64/include/asm/cpucaps.h | 6 +-
arch/arm64/include/asm/cpufeature.h | 250 +++++++++-
arch/arm64/include/asm/cputype.h | 43 ++
arch/arm64/include/asm/kvm_asm.h | 2 -
arch/arm64/include/asm/kvm_host.h | 11 +
arch/arm64/include/asm/processor.h | 22 +-
arch/arm64/include/asm/ptrace.h | 58 ++-
arch/arm64/include/asm/sysreg.h | 95 +++-
arch/arm64/include/asm/virt.h | 6 -
arch/arm64/include/uapi/asm/hwcap.h | 12 +
arch/arm64/include/uapi/asm/ptrace.h | 1 +
arch/arm64/kernel/bpi.S | 19 +-
arch/arm64/kernel/cpu_errata.c | 495 ++++++++++++--------
arch/arm64/kernel/cpufeature.c | 517 +++++++++++++++------
arch/arm64/kernel/cpuinfo.c | 12 +
arch/arm64/kernel/fpsimd.c | 1 +
arch/arm64/kernel/head.S | 13 +-
arch/arm64/kernel/process.c | 31 ++
arch/arm64/kernel/ptrace.c | 13 +-
arch/arm64/kernel/smp.c | 44 --
arch/arm64/kernel/ssbd.c | 22 +
arch/arm64/kernel/traps.c | 4 +-
arch/arm64/kvm/hyp/entry.S | 12 -
arch/arm64/kvm/hyp/switch.c | 10 -
arch/arm64/kvm/hyp/sysreg-sr.c | 11 +
arch/arm64/mm/fault.c | 3 +-
arch/arm64/mm/proc.S | 24 +-
arch/mips/boot/dts/qca/ar9331.dtsi | 2 +-
arch/mips/include/asm/cpu-features.h | 16 +
arch/mips/include/asm/cpu.h | 4 +
arch/mips/include/uapi/asm/hwcap.h | 11 +
arch/mips/kernel/cpu-probe.c | 37 ++
arch/mips/kernel/proc.c | 4 +
arch/mips/loongson64/common/serial.c | 2 +-
arch/mips/mm/tlbex.c | 23 +-
arch/parisc/mm/ioremap.c | 12 +-
arch/x86/include/asm/kvm_host.h | 4 +-
arch/x86/kernel/head64.c | 22 +-
arch/x86/kvm/lapic.c | 12 +-
arch/x86/kvm/lapic.h | 14 +
arch/x86/kvm/svm.c | 18 +-
arch/x86/kvm/vmx.c | 79 ++--
arch/x86/kvm/x86.c | 32 +-
arch/x86/xen/efi.c | 2 +
arch/xtensa/kernel/xtensa_ksyms.c | 7 -
drivers/base/core.c | 3 +
drivers/base/memory.c | 3 +
drivers/block/loop.c | 1 +
drivers/cpufreq/cpufreq.c | 10 -
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 35 ++
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 35 --
drivers/gpu/drm/drm_edid.c | 3 +
drivers/gpu/drm/radeon/radeon_drv.c | 8 -
drivers/infiniband/hw/cxgb4/mem.c | 28 +-
drivers/input/misc/da9063_onkey.c | 5 +-
drivers/input/rmi4/rmi_driver.c | 6 +-
drivers/md/raid0.c | 2 +-
drivers/memstick/host/jmb38x_ms.c | 2 +-
drivers/net/dsa/qca8k.c | 4 +-
drivers/net/ethernet/broadcom/genet/bcmgenet.h | 1 +
drivers/net/ethernet/broadcom/genet/bcmmii.c | 11 +-
drivers/net/ethernet/hisilicon/hns_mdio.c | 6 +-
drivers/net/ethernet/i825xx/lasi_82596.c | 4 +-
drivers/net/ethernet/i825xx/lib82596.c | 4 +-
drivers/net/ethernet/i825xx/sni_82596.c | 4 +-
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 12 +-
drivers/net/ieee802154/ca8210.c | 2 +-
drivers/net/usb/r8152.c | 3 +-
drivers/net/xen-netback/interface.c | 1 -
drivers/pci/pci.c | 24 +-
drivers/pinctrl/mvebu/pinctrl-armada-37xx.c | 26 +-
drivers/s390/scsi/zfcp_fsf.c | 16 +-
drivers/scsi/ch.c | 1 -
drivers/scsi/megaraid.c | 4 +-
drivers/scsi/qla2xxx/qla_target.c | 4 +
drivers/scsi/scsi_error.c | 3 +
drivers/scsi/scsi_sysfs.c | 11 +-
drivers/scsi/sd.c | 3 +-
drivers/scsi/ufs/ufshcd.c | 3 +
drivers/staging/wlan-ng/cfg80211.c | 6 +-
drivers/usb/class/usblp.c | 4 +-
drivers/usb/gadget/udc/lpc32xx_udc.c | 6 +-
drivers/usb/misc/ldusb.c | 20 +-
drivers/usb/misc/legousbtower.c | 5 +-
drivers/usb/serial/ti_usb_3410_5052.c | 10 +-
fs/btrfs/extent-tree.c | 1 +
fs/cifs/smb1ops.c | 3 +
fs/ocfs2/journal.c | 3 +-
fs/ocfs2/localalloc.c | 3 +-
fs/proc/page.c | 28 +-
include/scsi/scsi_eh.h | 1 +
mm/hugetlb.c | 5 +-
mm/page_owner.c | 5 +-
mm/shmem.c | 18 +-
mm/slub.c | 13 +-
net/ipv4/route.c | 9 +-
net/mac80211/debugfs_netdev.c | 11 +-
net/mac80211/mlme.c | 5 +-
net/sched/act_api.c | 13 +-
net/sctp/socket.c | 4 +-
net/wireless/nl80211.c | 3 +
net/wireless/wext-sme.c | 8 +-
scripts/namespace.pl | 13 +-
sound/pci/hda/patch_realtek.c | 3 +
sound/soc/sh/rcar/core.c | 1 +
112 files changed, 1773 insertions(+), 808 deletions(-)
These patches include few backported fixes for the 4.4 stable
tree.
I would appreciate if you could kindly consider including them in the
next release.
Ajay
---
[Changes from v1]: No changes, only answering Greg's below queries:
>> Why are these needed? From what I remember, the last patch here is only
>> needed for machines that are "HUGE" and for those, you shouldn't be
>> using 4.4.y anymore anyway, right? You just end up saving so much more
>> speed and energy using a newer kernel, why would you want to waste it
>> using an older one?
>>
>> So I need a really good reason why to accept these :)
>
> It's been a week, so I'm dropping this from my queue now. Please resend
> with this information if you still want these in the tree.
> thanks,
> greg k-h
Indeed, the machine needs to have about 140 GB of RAM to exploit
this vulnerability (CVE-2019-11487). However, Photon OS doesn't
impose any limits on the amount of RAM that it supports, so we would
like to safeguard the kernel against this CVE. Also, while newer
versions of Photon OS are on more recent kernels, Photon OS 1.0 uses
the 4.4 stable series, so it would be great to get these patches
included in an upcoming 4.4 stable release.
We would also like to have the following patches that are for machines
that are huge:
Patch 1: Introduced page_ref_zero_or_close_to_overflow() which helps to
check for small underflows (or _very_ close to overflowing), and ignore
overflows which have strayed into negative territory.
And this is being used inside get_page() and get_page_foll() to reduce the
possibility of overflowing.
Patch 6: Attacker could do direct IO on a page multiple times to trigger
an overflowing. This patch makes get_user_pages() refuse to if there is
an overflow.
Patch 8: This removes another mechanism for overflowing the page refcount
inside pipe_buf_get().
---
[PATCH v2 1/8]:
Backporting of upstream commit f958d7b528b1:
mm: make page ref count overflow check tighter and more explicit
[PATCH v2 2/8]:
Backporting of upstream commit 88b1a17dfc3e:
mm: add 'try_get_page()' helper function
[PATCH v2 3/8]:
Backporting of upstream commit 7aef4172c795:
mm: handle PTE-mapped tail pages in gerneric fast gup implementaiton
[PATCH v2 4/8]:
Backporting of upstream commit a3e328556d41:
mm, gup: remove broken VM_BUG_ON_PAGE compound check for hugepages
[PATCH v2 5/8]:
Backporting of upstream commit d63206ee32b6:
mm, gup: ensure real head page is ref-counted when using hugepages
[PATCH v2 6/8]:
Backporting of upstream commit 8fde12ca79af:
mm: prevent get_user_pages() from overflowing page refcount
[PATCH v2 7/8]:
Backporting of upstream commit 7bf2d1df8082:
pipe: add pipe_buf_get() helper
[PATCH v2 8/8]:
Backporting of upstream commit 15fab63e1e57:
fs: prevent page refcount overflow in pipe_buf_get
Hello,
I'm requesting this commit to be back-ported to v4.14:
---
commit 5b18f1289808fee5d04a7e6ecf200189f41a4db6
Author: Stephen Suryaputra <ssuryaextr(a)gmail.com>
Date: Wed Jun 26 02:21:16 2019 -0400
ipv4: reset rt_iif for recirculated mcast/bcast out pkts
Multicast or broadcast egress packets have rt_iif set to the oif. These
packets might be recirculated back as input and lookup to the raw
sockets may fail because they are bound to the incoming interface
(skb_iif). If rt_iif is not zero, during the lookup, inet_iif() function
returns rt_iif instead of skb_iif. Hence, the lookup fails.
v2: Make it non vrf specific (David Ahern). Reword the changelog to
reflect it.
Signed-off-by: Stephen Suryaputra <ssuryaextr(a)gmail.com>
Reviewed-by: David Ahern <dsahern(a)gmail.com>
Signed-off-by: David S. Miller <davem(a)davemloft.net>
---
We found the issue in that release and the above commit is on
linux-stable. On the discussion behind this commit, please see:
https://www.spinics.net/lists/netdev/msg581045.html
I think after the following diff is needed on top of the above commit
for v4.14:
---
diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index 4d85a4fdfdb0..ad2718c1624e 100644
--- a/net/ipv4/route.c
+++ b/net/ipv4/route.c
@@ -1623,11 +1623,8 @@ struct rtable *rt_dst_clone(struct net_device *dev, struct rtable *rt)
new_rt->rt_iif = rt->rt_iif;
new_rt->rt_pmtu = rt->rt_pmtu;
new_rt->rt_mtu_locked = rt->rt_mtu_locked;
- new_rt->rt_gw_family = rt->rt_gw_family;
- if (rt->rt_gw_family == AF_INET)
- new_rt->rt_gw4 = rt->rt_gw4;
- else if (rt->rt_gw_family == AF_INET6)
- new_rt->rt_gw6 = rt->rt_gw6;
+ new_rt->rt_gateway = rt->rt_gateway;
+ new_rt->rt_table_id = rt->rt_table_id;
INIT_LIST_HEAD(&new_rt->rt_uncached);
new_rt->dst.flags |= DST_HOST;
---
Thank you,
Stephen.
This is the start of the stable review cycle for the 4.9.188 release.
There are 42 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Wed 07 Aug 2019 12:47:58 PM UTC.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v4.x/stable-review/patch-4.9.188-rc…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 4.9.188-rc1
Vlastimil Babka <vbabka(a)suse.cz>
x86, mm, gup: prevent get_page() race with munmap in paravirt guest
Josh Poimboeuf <jpoimboe(a)redhat.com>
objtool: Support GCC 9 cold subfunction naming scheme
Miguel Ojeda <miguel.ojeda.sandonis(a)gmail.com>
include/linux/module.h: copy __init/__exit attrs to init/cleanup_module
Miguel Ojeda <miguel.ojeda.sandonis(a)gmail.com>
Backport minimal compiler_attributes.h to support GCC 9
Jean Delvare <jdelvare(a)suse.de>
eeprom: at24: make spd world-readable again
Andrea Arcangeli <aarcange(a)redhat.com>
coredump: fix race condition between collapse_huge_page() and core dumping
Ajay Kaher <akaher(a)vmware.com>
infiniband: fix race condition between infiniband mlx4, mlx5 driver and core dumping
Andrea Arcangeli <aarcange(a)redhat.com>
coredump: fix race condition between mmget_not_zero()/get_task_mm() and core dumping
Yishai Hadas <yishaih(a)mellanox.com>
IB/mlx5: Fix RSS Toeplitz setup to be aligned with the HW specification
Juergen Gross <jgross(a)suse.com>
xen/swiotlb: fix condition for calling xen_destroy_contiguous_region()
Will Deacon <will(a)kernel.org>
drivers/perf: arm_pmu: Fix failure path in PM notifier
Stefan Haberland <sth(a)linux.ibm.com>
s390/dasd: fix endless loop after read unit address configuration
Ondrej Mosnacek <omosnace(a)redhat.com>
selinux: fix memory leak in policydb_init()
Michael Wu <michael.wu(a)vatics.com>
gpiolib: fix incorrect IRQ requesting of an active-low lineevent
Douglas Anderson <dianders(a)chromium.org>
mmc: dw_mmc: Fix occasional hang after tuning on eMMC
Filipe Manana <fdmanana(a)suse.com>
Btrfs: fix incremental send failure after deduplication
Masahiro Yamada <yamada.masahiro(a)socionext.com>
kbuild: initialize CLANG_FLAGS correctly in the top Makefile
Zhenzhong Duan <zhenzhong.duan(a)oracle.com>
x86, boot: Remove multiple copy of static function sanitize_boot_params()
Josh Poimboeuf <jpoimboe(a)redhat.com>
x86/kvm: Don't call kvm_spurious_fault() from .fixup
Kees Cook <keescook(a)chromium.org>
ipc/mqueue.c: only perform resource calculation if user valid
Dan Carpenter <dan.carpenter(a)oracle.com>
drivers/rapidio/devices/rio_mport_cdev.c: NUL terminate some strings
Mikko Rapeli <mikko.rapeli(a)iki.fi>
uapi linux/coda_psdev.h: move upc_req definition from uapi to kernel side headers
Sam Protsenko <semen.protsenko(a)linaro.org>
coda: fix build using bare-metal toolchain
Zhouyang Jia <jiazhouyang09(a)gmail.com>
coda: add error handling for fget
Doug Berger <opendmb(a)gmail.com>
mm/cma.c: fail if fixed declaration can't be honored
Arnd Bergmann <arnd(a)arndb.de>
x86: math-emu: Hide clang warnings for 16-bit overflow
Qian Cai <cai(a)lca.pw>
x86/apic: Silence -Wtype-limits compiler warnings
Benjamin Poirier <bpoirier(a)suse.com>
be2net: Signal that the device cannot transmit during reconfiguration
Arnd Bergmann <arnd(a)arndb.de>
ACPI: fix false-positive -Wuninitialized warning
Benjamin Block <bblock(a)linux.ibm.com>
scsi: zfcp: fix GCC compiler warning emitted with -Wmaybe-uninitialized
Jeff Layton <jlayton(a)kernel.org>
ceph: return -ERANGE if virtual xattr value didn't fit in buffer
Andrea Parri <andrea.parri(a)amarulasolutions.com>
ceph: fix improper use of smp_mb__before_atomic()
David Sterba <dsterba(a)suse.com>
btrfs: fix minimum number of chunk errors for DUP
Russell King <rmk+kernel(a)armlinux.org.uk>
fs/adfs: super: fix use-after-free bug
Geert Uytterhoeven <geert+renesas(a)glider.be>
dmaengine: rcar-dmac: Reject zero-length slave DMA requests
Petr Cvek <petrcvekcz(a)gmail.com>
MIPS: lantiq: Fix bitfield masking
Prarit Bhargava <prarit(a)redhat.com>
kernel/module.c: Only return -EEXIST for modules that have finished loading
Cheng Jian <cj.chengjian(a)huawei.com>
ftrace: Enable trampoline when rec count returns back to one
Douglas Anderson <dianders(a)chromium.org>
ARM: dts: rockchip: Mark that the rk3288 timer might stop in suspend
Douglas Anderson <dianders(a)chromium.org>
ARM: dts: rockchip: Make rk3288-veyron-mickey's emmc work again
Douglas Anderson <dianders(a)chromium.org>
ARM: dts: rockchip: Make rk3288-veyron-minnie run at hs200
Russell King <rmk+kernel(a)armlinux.org.uk>
ARM: riscpc: fix DMA
-------------
Diffstat:
Makefile | 7 +--
arch/arm/boot/dts/rk3288-veyron-mickey.dts | 4 --
arch/arm/boot/dts/rk3288-veyron-minnie.dts | 4 --
arch/arm/boot/dts/rk3288.dtsi | 1 +
arch/arm/mach-rpc/dma.c | 5 +-
arch/mips/lantiq/irq.c | 5 +-
arch/x86/boot/compressed/misc.c | 1 +
arch/x86/boot/compressed/misc.h | 1 -
arch/x86/include/asm/apic.h | 2 +-
arch/x86/include/asm/kvm_host.h | 34 +++++++------
arch/x86/kernel/apic/apic.c | 2 +-
arch/x86/math-emu/fpu_emu.h | 2 +-
arch/x86/math-emu/reg_constant.c | 2 +-
arch/x86/mm/gup.c | 32 +++++++++++-
drivers/android/binder.c | 6 +++
drivers/dma/sh/rcar-dmac.c | 2 +-
drivers/gpio/gpiolib.c | 6 ++-
drivers/infiniband/hw/mlx4/main.c | 4 +-
drivers/infiniband/hw/mlx5/main.c | 3 ++
drivers/infiniband/hw/mlx5/qp.c | 1 -
drivers/misc/eeprom/at24.c | 2 +-
drivers/mmc/host/dw_mmc.c | 3 +-
drivers/net/ethernet/emulex/benet/be_main.c | 6 ++-
drivers/perf/arm_pmu.c | 2 +-
drivers/rapidio/devices/rio_mport_cdev.c | 2 +
drivers/s390/block/dasd_alias.c | 22 ++++++---
drivers/s390/scsi/zfcp_erp.c | 7 +++
drivers/xen/swiotlb-xen.c | 4 +-
fs/adfs/super.c | 5 +-
fs/btrfs/send.c | 77 ++++++-----------------------
fs/btrfs/volumes.c | 3 +-
fs/ceph/super.h | 7 ++-
fs/ceph/xattr.c | 14 +++---
fs/coda/psdev.c | 5 +-
fs/proc/task_mmu.c | 18 +++++++
fs/userfaultfd.c | 9 ++++
include/linux/acpi.h | 5 +-
include/linux/coda.h | 3 +-
include/linux/coda_psdev.h | 11 +++++
include/linux/compiler.h | 16 ++++++
include/linux/mm.h | 24 +++++++++
include/linux/module.h | 4 +-
include/uapi/linux/coda_psdev.h | 13 -----
ipc/mqueue.c | 19 +++----
kernel/module.c | 6 +--
kernel/trace/ftrace.c | 28 ++++++-----
mm/cma.c | 13 +++++
mm/khugepaged.c | 3 ++
mm/mmap.c | 6 ++-
security/selinux/ss/policydb.c | 6 ++-
tools/objtool/elf.c | 2 +-
51 files changed, 294 insertions(+), 175 deletions(-)