Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

4.14 2.0.x imx #50

Merged
merged 718 commits into from
Jul 15, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
718 commits
Select commit Hold shift + click to select a range
50892cb
iio: ad_sigma_delta: Properly handle SPI bus locking vs CS assertion
larsclausen Mar 19, 2019
e76528d
iio: hmc5843: fix potential NULL pointer dereferences
kengiter Mar 16, 2019
3951b82
iio: common: ssp_sensors: Initialize calculated_time in ssp_common_pr…
nathanchance Mar 7, 2019
4a63186
rtlwifi: fix a potential NULL pointer dereference
kengiter Mar 12, 2019
ccebaec
mwifiex: Fix mem leak in mwifiex_tm_cmd
Mar 12, 2019
1ea4bb1
brcmfmac: fix missing checks for kmemdup
kengiter Mar 15, 2019
bc00fed
b43: shut up clang -Wuninitialized variable warning
arndb Mar 22, 2019
0f2aa38
brcmfmac: convert dev_init_lock mutex to completion
figiel Mar 13, 2019
cbac989
brcmfmac: fix WARNING during USB disconnect in case of unempty psq
figiel Mar 4, 2019
dfbe5ff
brcmfmac: fix race during disconnect when USB completion is in progress
figiel Mar 8, 2019
4775e99
brcmfmac: fix Oops when bringing up interface during USB disconnect
figiel Mar 13, 2019
ae087a4
rtc: xgene: fix possible race condition
alexandrebelloni Mar 20, 2019
09ef780
rtlwifi: fix potential NULL pointer dereference
Mar 12, 2019
4abdc0b
scsi: ufs: Fix regulator load and icc-level configuration
Mar 28, 2019
5dce30b
scsi: ufs: Avoid configuring regulator with undefined voltage range
Mar 28, 2019
5399fba
arm64: cpu_ops: fix a leaked reference by adding missing of_node_put
taskset Mar 5, 2019
8190d6f
x86/uaccess, ftrace: Fix ftrace_likely_update() vs. SMAP
Mar 7, 2019
e8f338f
x86/uaccess, signal: Fix AC=1 bloat
Apr 3, 2019
06c239a
x86/ia32: Fix ia32_restore_sigcontext() AC leak
Feb 25, 2019
ed3f381
chardev: add additional check for minor range overlap
Feb 15, 2019
f17967f
RDMA/hns: Fix bad endianess of port_pd variable
Mar 19, 2019
320b29f
HID: core: move Usage Page concatenation to Main item
Mar 27, 2019
b20f6ed
ASoC: eukrea-tlv320: fix a leaked reference by adding missing of_node…
taskset Feb 26, 2019
91126ba
ASoC: fsl_utils: fix a leaked reference by adding missing of_node_put
taskset Feb 26, 2019
123320d
cxgb3/l2t: Fix undefined behaviour
GustavoARSilva Mar 29, 2019
bfd8acc
HID: logitech-hidpp: change low battery level threshold from 31 to 30…
jwrdegoede Mar 22, 2019
1b0b2e1
spi: tegra114: reset controller on probe
Mar 27, 2019
ce4390f
kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice.
Mar 17, 2019
9d561c9
media: video-mux: fix null pointer dereferences
kengiter Mar 9, 2019
2f6e78d
media: wl128x: prevent two potential buffer overflows
Mar 26, 2019
49913e5
scsi: qedf: Add missing return in qedf_post_io_req() in the fcport of…
Mar 26, 2019
5db7c02
virtio_console: initialize vtermno value for ports
Mar 19, 2019
b6941f2
tty: ipwireless: fix missing checks for ioremap
kengiter Mar 15, 2019
ad37665
x86/mce: Fix machine_check_poll() tests for error types
aegl Mar 12, 2019
014be4d
rcutorture: Fix cleanup path for invalid torture_type strings
Mar 21, 2019
824343e
rcuperf: Fix cleanup path for invalid perf_type strings
Mar 21, 2019
771d1ad
usb: core: Add PM runtime calls to usb_hcd_platform_shutdown
tmlind Mar 22, 2019
d48a213
scsi: qla4xxx: avoid freeing unallocated dma memory
arndb Mar 22, 2019
504eff5
batman-adv: allow updating DAT entry timeouts on incoming ARP Replies
T-X Feb 14, 2019
ea83cb8
dmaengine: tegra210-adma: use devm_clk_*() helpers
pujars Mar 13, 2019
deb757e
hwrng: omap - Set default quality
Emantor Mar 11, 2019
a63a05a
thunderbolt: Fix to check for kmemdup failure
Mar 20, 2019
1c26e56
media: m88ds3103: serialize reset messages in m88ds3103_set_frontend
jahutchi Jan 13, 2019
efe948a
media: vimc: stream: fix thread state before sleep
Mar 6, 2019
b9da4f9
media: go7007: avoid clang frame overflow warning with KASAN
arndb Feb 19, 2019
5cacdab
media: vimc: zero the media_device on probe
Mar 8, 2019
a970afc
scsi: lpfc: Fix FDMI manufacturer attribute value
jsmart-gh Mar 12, 2019
8ce674d
scsi: lpfc: Fix fc4type information for FDMI
jsmart-gh Mar 12, 2019
c87a588
media: saa7146: avoid high stack usage with clang
arndb Feb 19, 2019
c0c5f88
scsi: lpfc: Fix SLI3 commands being issued on SLI4 devices
jsmart-gh Mar 12, 2019
febdf32
spi : spi-topcliff-pch: Fix to handle empty DMA buffers
Mar 13, 2019
d5f68b8
spi: rspi: Fix sequencer reset during initialization
geertu Mar 12, 2019
9618ab2
spi: Fix zero length xfer bug
ChrisLesiak Mar 7, 2019
3e04442
ASoC: davinci-mcasp: Fix clang warning without CONFIG_PM
arndb Mar 7, 2019
b2a21fe
drm/drv: Hold ref on parent device during drm_device lifetime
notro Feb 25, 2019
ce16889
drm: Wake up next in drm_read() chain if we are forced to putback the…
ickle Aug 4, 2017
3d5e860
vfio-ccw: Prevent quiesce function going into an infinite loop
Apr 16, 2019
de69696
NFS: Fix a double unlock from nfs_match,get_client
bcodding-rh May 9, 2019
8cb1239
Linux 4.14.123
gregkh May 31, 2019
e10789a
inet: switch IP ID generator to siphash
Mar 27, 2019
b776547
ipv6: Consider sk_bound_dev_if when binding a raw socket to an address
mikebcom May 20, 2019
7c54539
llc: fix skb leak in llc_build_and_send_ui_pkt()
May 28, 2019
c5fa8de
net: fec: fix the clk mismatch in failed_reset path
fugangduan May 23, 2019
385ee66
net-gro: fix use-after-free read in napi_gro_frags()
May 29, 2019
03069e8
net: stmmac: fix reset gpio free missing
May 22, 2019
4f6d160
usbnet: fix kernel crash after disconnect
jkloetzke May 21, 2019
39c2bc5
tipc: Avoid copying bytes beyond the supplied data
cpackham-atlnz May 20, 2019
75c0ab0
net/mlx5: Allocate root ns memory using kzalloc to match kfree
paravmellanox May 10, 2019
6a2ba76
bnxt_en: Fix aggregation buffer leak under OOM condition.
May 22, 2019
5e5fda4
ipv4/igmp: fix another memory leak in igmpv3_del_delrec()
May 22, 2019
47842fc
ipv4/igmp: fix build error if !CONFIG_IP_MULTICAST
May 23, 2019
163d735
net: dsa: mv88e6xxx: fix handling of upper half of STATS_TYPE_PORT
May 29, 2019
b9119b6
net: mvneta: Fix err code path of probe
May 27, 2019
d8d0aa7
net: mvpp2: fix bad MVPP2_TXQ_SCHED_TOKEN_CNTR_REG queue value
atenart May 29, 2019
691e520
net: phy: marvell10g: report if the PHY fails to boot firmware
May 28, 2019
e9d1de1
crypto: vmx - ghash: do nosimd fallback manually
daxtens May 16, 2019
a81ed53
xen/pciback: Don't disable PCI_COMMAND on PCI device reset.
konradwilk Feb 13, 2019
f61e651
Revert "tipc: fix modprobe tipc failed after switch order of device r…
davem330 May 17, 2019
d93fb60
tipc: fix modprobe tipc failed after switch order of device registration
May 20, 2019
34fc0e8
sparc64: Fix regression in non-hypervisor TLB flush xcall
jrtc27 May 29, 2019
03f6cbb
include/linux/bitops.h: sanitize rotate primitives
Villemoes May 14, 2019
418d0e4
xhci: update bounce buffer with correct sg num
May 22, 2019
1b2eabf
xhci: Use %zu for printing size_t type
fabioestevam May 22, 2019
e084737
xhci: Convert xhci_handshake() to use readl_poll_timeout_atomic()
ndreys May 22, 2019
bc8409d
usb: xhci: avoid null pointer deref when bos field is NULL
May 22, 2019
db8698b
usbip: usbip_host: fix BUG: sleeping function called from invalid con…
shuahkh May 2, 2019
ea887c4
usbip: usbip_host: fix stub_dev lock context imbalance regression
shuahkh May 29, 2019
b005cb1
USB: Fix slab-out-of-bounds write in usb_get_bos_descriptor
AlanStern May 13, 2019
47ffaae
USB: sisusbvga: fix oops in error path of sisusb_probe
oneukum May 9, 2019
1fd6e7c
USB: Add LPM quirk for Surface Dock GigE adapter
qzed May 16, 2019
f18227d
USB: rio500: refuse more than one device at a time
oneukum May 9, 2019
a86fef3
USB: rio500: fix memory leak in close after disconnect
oneukum May 9, 2019
5a7adcd
media: usb: siano: Fix general protection fault in smsusb
AlanStern May 7, 2019
629b11a
media: usb: siano: Fix false-positive "uninitialized variable" warning
AlanStern May 21, 2019
b22f4ce
media: smsusb: better handle optional alignment
mchehab May 24, 2019
b9efbdd
scsi: zfcp: fix missing zfcp_port reference put on -EBUSY from port_r…
steffen-maier May 23, 2019
e31752f
scsi: zfcp: fix to prevent port_remove with pure auto scan LUNs (only…
steffen-maier May 23, 2019
ab4dfb1
Btrfs: fix wrong ctime and mtime of a directory after log replay
fdmanana May 15, 2019
3562d6e
Btrfs: fix race updating log root item during fsync
fdmanana May 15, 2019
69e14cf
Btrfs: fix fsync not persisting changed attributes of a directory
fdmanana May 16, 2019
c2f017b
Btrfs: incremental send, fix file corruption when no-holes feature is…
fdmanana May 20, 2019
86a8f71
KVM: PPC: Book3S HV: XIVE: Do not clear IRQ data of passthrough inter…
legoater May 28, 2019
9ba2bcc
powerpc/perf: Fix MMCRA corruption by bhrb_filter
May 11, 2019
163f756
ALSA: hda/realtek - Set default power save node to 0
KailangYang May 23, 2019
527919d
KVM: s390: Do not report unusabled IDs via KVM_CAP_MAX_VCPU_ID
huth May 23, 2019
73cc49c
drm/nouveau/i2c: Disable i2c bus access after ->fini()
Lyude Apr 9, 2019
7dba5f1
tty: serial: msm_serial: Fix XON/XOFF
ldts May 20, 2019
3d3494a
tty: max310x: Fix external crystal register setup
jabjoe May 13, 2019
1bd3353
memcg: make it work on sparse non-0-node systems
Jun 1, 2019
3213acb
kernel/signal.c: trace_signal_deliver when signal_group_exit
Jun 1, 2019
7dbf1a7
docs: Fix conf.py for Sphinx 2.0
May 22, 2019
7ddc65c
doc: Cope with the deprecation of AutoReporter
May 21, 2019
732c9e4
doc: Cope with Sphinx logging deprecations
May 21, 2019
8eb3701
ima: show rules with IMA_INMASK correctly
robertosassu May 29, 2019
b69101c
serial: sh-sci: disable DMA for uart_console
May 15, 2019
f5a14bb
staging: vc04_services: prevent integer overflow in create_pagelist()
May 15, 2019
f205a91
staging: wlan-ng: fix adapter initialization failure
May 11, 2019
dea5d38
CIFS: cifs_read_allocate_pages: don't iterate through whole page arra…
May 28, 2019
3420dce
Revert "lockd: Show pid of lockd for remote locks"
bcodding-rh May 20, 2019
ed69b64
gcc-plugins: Fix build failures under Darwin host
kees May 20, 2019
481a475
drm/vmwgfx: Don't send drm sysfs hotplug events on initial master set
thomashvmw May 7, 2019
fd05d94
drm/rockchip: shutdown drm subsystem on shutdown
vicencb Apr 2, 2019
b00c958
Compiler Attributes: add support for __copy (gcc >= 9)
ojeda Feb 8, 2019
08aaa79
include/linux/module.h: copy __init/__exit attrs to init/cleanup_module
ojeda Jan 19, 2019
0e984ff
Revert "x86/build: Move _etext to actual end of .text"
gregkh Jun 5, 2019
046f116
Revert "binder: fix handling of misaligned binder object"
Jun 5, 2019
c2a035d
binder: fix race between munmap() and direct reclaim
Jun 5, 2019
04d3e9c
media: uvcvideo: Fix uvc_alloc_entity() allocation alignment
anadav Jun 4, 2018
e6a95d8
Linux 4.14.124
gregkh Jun 9, 2019
0770b25
ethtool: fix potential userspace buffer overflow
vivien Jun 3, 2019
2cdb66c
Fix memory leak in sctp_process_init
nhorman Jun 3, 2019
ae26f57
neighbor: Call __ipv4_neigh_lookup_noref in neigh_xmit
dsahern May 2, 2019
8ab6676
net/mlx4_en: ethtool, Remove unsupported SFP EEPROM high pages query
erezamellanox May 20, 2019
0c206bf
net: rds: fix memory leak in rds_ib_flush_mr_pool
Jun 6, 2019
b23be64
pktgen: do not sleep with the thread lock held.
Jun 6, 2019
4b83a95
ipv6: fix EFAULT on sendto with icmpv6 and hdrincl
olivier-matz-6wind Jun 6, 2019
ee6e0ce
ipv6: use READ_ONCE() for inet->hdrincl as in ipv4
olivier-matz-6wind Jun 6, 2019
c77b064
net: sfp: read eeprom in maximum 16 byte increments
Jun 2, 2019
5a30ca9
ipv6: fix the check before getting the cookie in rt6_get_cookie
lxin Jun 2, 2019
7e2b5c2
Revert "fib_rules: fix error in backport of e9919a24d302 ("fib_rules:…
gregkh Jun 9, 2019
628dd79
Revert "fib_rules: return 0 directly if an exactly same rule exists w…
liuhangbin Jun 5, 2019
cfa2e34
rcu: locking and unlocking need to always be at least barriers
torvalds Jun 3, 2019
91f4595
parisc: Use implicit space register selection for loading the coheren…
danglin44 May 28, 2019
7a28b74
fuse: fallocate: fix return with locked inode
May 27, 2019
d80d6f6
pstore: Remove needless lock during console writes
kees Nov 1, 2018
f72ecfe
pstore: Convert buf_lock to semaphore
kees Nov 30, 2018
08ae2e8
pstore/ram: Run without kernel crash dump region
kees May 31, 2019
b928440
x86/power: Fix 'nosmt' vs hibernation triple fault during resume
May 29, 2019
efba936
i2c: xiic: Add max_read_len quirk
robhancocksed Jun 4, 2019
3901e83
MIPS: Bounds check virt_addr_valid
paulburton May 28, 2019
72dc172
MIPS: pistachio: Build uImage.gz by default
paulburton May 28, 2019
b87f310
Revert "MIPS: perf: ath79: Fix perfcount IRQ assignment"
gregkh Jun 9, 2019
e9dc6b8
genwqe: Prevent an integer overflow in the ioctl
May 7, 2019
2418da0
test_firmware: Use correct snprintf() limit
May 15, 2019
bd5cd75
drm/gma500/cdv: Check vbt config bits when detecting lvds panels
patjak Apr 16, 2019
140ae65
drm/nouveau: add kconfig option to turn off nouveau legacy contexts. …
airlied Apr 18, 2019
1a7df71
drm/amdgpu/psp: move psp version specific function pointers to early_…
alexdeucher May 9, 2019
e2acd3c
drm/radeon: prefer lower reference dividers
ChristianKoenigAMD May 6, 2019
66bc1b2
drm/i915: Fix I915_EXEC_RING_MASK
ickle Mar 1, 2019
406977e
drm/i915/fbc: disable framebuffer compression on GeminiLake
dsd Apr 23, 2019
724ec4b
TTY: serial_core, add ->install
Apr 17, 2019
3a6a510
qmi_wwan: Add quirk for Quectel dynamic config
kristrev Apr 7, 2019
b673f99
fs: stream_open - opener for stream-like files so that read and write…
navytux Mar 26, 2019
585724f
fuse: Add FOPEN_STREAM to use stream_open()
navytux Apr 24, 2019
badd8e3
ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled
dsahern May 5, 2019
9665d94
ethtool: check the return value of get_regs_len
Dec 26, 2018
2bf3258
Linux 4.14.125
gregkh Jun 11, 2019
a36a887
rapidio: fix a NULL pointer dereference when create_workqueue() fails
kengiter May 14, 2019
33440c2
fs/fat/file.c: issue flush after the writeback of FAT
May 14, 2019
869febe
sysctl: return -EINVAL if val violates minmax
brauner May 14, 2019
bcdabf7
ipc: prevent lockup on alloc_msg and free_msg
lrq-max May 14, 2019
525ea11
ARM: prevent tracing IPI_CPU_BACKTRACE
arndb May 14, 2019
04f7009
mm/hmm: select mmu notifier when selecting HMM
May 14, 2019
d425d0a
hugetlbfs: on restore reserve error path retain subpool reservation
mjkravetz May 14, 2019
27d8fa8
mem-hotplug: fix node spanned pages when we have a node with only ZON…
May 14, 2019
f3da1dc
mm/cma.c: fix crash on CMA allocation if bitmap allocation fails
May 14, 2019
20fbb34
mm/cma.c: fix the bitmap status to show failed allocation reason
May 14, 2019
e7b92a6
mm/cma_debug.c: fix the break condition in cma_maxchunk_get()
May 14, 2019
1649652
mm/slab.c: fix an infinite loop in leaks_show()
May 14, 2019
a84bd98
kernel/sys.c: prctl: fix false positive in validate_prctl_map()
cyrillos May 14, 2019
4aea922
thermal: rcar_gen3_thermal: disable interrupt in .remove
jiada-wang Apr 24, 2019
d04c6d5
drivers: thermal: tsens: Don't print error message on -EPROBE_DEFER
idlethread Mar 20, 2019
9ad5cf2
mfd: tps65912-spi: Add missing of table registration
dkruces Apr 22, 2019
4b3d4b8
mfd: intel-lpss: Set the device in reset state when init
binbinwu1 Apr 8, 2019
6257b7c
drm/nouveau/disp/dp: respect sink limits when selecting failsafe link…
May 10, 2019
8bdd879
mfd: twl6040: Fix device init errors for ACCCTL register
tmlind Feb 14, 2019
8340e78
perf/x86/intel: Allow PEBS multi-entry in watermark mode
May 14, 2019
af692bc
drm/bridge: adv7511: Fix low refresh rate selection
Apr 24, 2019
dcb38ed
objtool: Don't use ignore flag for fake jumps
jpoimboe May 13, 2019
f430f75
EDAC/mpc85xx: Prevent building as a module
mpe May 2, 2019
9bf131f
pwm: meson: Use the spin-lock only to protect register modifications
xdarklight Apr 1, 2019
4f2b302
ntp: Allow TAI-UTC offset to be set to zero
mlichvar Apr 17, 2019
549f093
f2fs: fix to avoid panic in do_recover_data()
chaseyu Apr 15, 2019
35ac00c
f2fs: fix to clear dirty inode in error path of f2fs_iget()
chaseyu Apr 15, 2019
7765cd4
f2fs: fix to avoid panic in dec_valid_block_count()
chaseyu Apr 15, 2019
c32e6a5
f2fs: fix to do sanity check on valid block count of segment
chaseyu Apr 15, 2019
5f7dc5a
percpu: remove spurious lock dependency between percpu and sched
May 8, 2019
a074466
configfs: fix possible use-after-free in configfs_register_group
May 5, 2019
c752bad
uml: fix a boot splat wrt use of cpu_all_mask
zenczykowski Apr 10, 2019
647fa64
mmc: mmci: Prevent polling for busy detection in IRQ context
ludovicbarre Apr 26, 2019
c3278cc
watchdog: imx2_wdt: Fix set_timeout for big timeout values
Apr 8, 2019
ab18358
watchdog: fix compile time error of pretimeout governors
vzapolskiy Mar 11, 2019
aa331e8
blk-mq: move cancel of requeue_work into blk_mq_release
Apr 30, 2019
0a6e120
iommu/vt-d: Set intel_iommu_gfx_mapped correctly
LuBaolu May 2, 2019
9b1ce77
misc: pci_endpoint_test: Fix test_reg_bar to be updated in pci_endpoi…
kishon Mar 25, 2019
44dda4c
nvme-pci: unquiesce admin queue on shutdown
Apr 30, 2019
c9ffc88
ALSA: hda - Register irq handler after the chip initialization
tiwai Apr 30, 2019
c4e22c2
nvmem: core: fix read buffer in place
ldts Apr 13, 2019
1e0a252
fuse: retrieve: cap requested size to negotiated max_write
navytux Mar 27, 2019
76f53b8
nfsd: allow fh_want_write to be called twice
Apr 12, 2019
488c10b
vfio: Fix WARNING "do not call blocking ops when !TASK_RUNNING"
Apr 3, 2019
147ee2c
x86/PCI: Fix PCI IRQ routing table memory leak
Apr 17, 2019
9c8ace7
platform/chrome: cros_ec_proto: check for NULL transfer function
Apr 3, 2019
7cb42a3
PCI: keystone: Prevent ARM32 specific code to be compiled for ARM64
kishon Mar 25, 2019
46e2c2c
soc: mediatek: pwrap: Zero initialize rdata in pwrap_init_cipher
nathanchance Mar 7, 2019
fe14b77
clk: rockchip: Turn on "aclk_dmac1" for suspend on rk3288
dianders Apr 11, 2019
4497c2b
soc: rockchip: Set the proper PWM for rk3288
dianders Apr 9, 2019
b922772
ARM: dts: imx51: Specify IMX5_CLK_IPG as "ahb" clock to SDMA
ndreys Mar 29, 2019
067b9f3
ARM: dts: imx50: Specify IMX5_CLK_IPG as "ahb" clock to SDMA
ndreys Mar 29, 2019
270bf3d
ARM: dts: imx53: Specify IMX5_CLK_IPG as "ahb" clock to SDMA
ndreys Mar 29, 2019
8c95d04
ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ahb" clock to SDMA
ndreys Mar 29, 2019
3139a47
ARM: dts: imx7d: Specify IMX7D_CLK_IPG as "ipg" clock to SDMA
ndreys Mar 29, 2019
1b31efd
ARM: dts: imx6ul: Specify IMX6UL_CLK_IPG as "ipg" clock to SDMA
ndreys Mar 29, 2019
b9817e3
ARM: dts: imx6sx: Specify IMX6SX_CLK_IPG as "ipg" clock to SDMA
ndreys Mar 29, 2019
b426217
ARM: dts: imx6qdl: Specify IMX6QDL_CLK_IPG as "ipg" clock to SDMA
ndreys Mar 29, 2019
5f0c39b
PCI: rpadlpar: Fix leaked device_node references in add/remove paths
Mar 22, 2019
912d341
platform/x86: intel_pmc_ipc: adding error handling
junxiaoc Apr 8, 2019
49a7ee2
power: supply: max14656: fix potential use-before-alloc
Feb 15, 2019
dfff852
PCI: rcar: Fix a potential NULL pointer dereference
kengiter Mar 15, 2019
9b116cf
PCI: rcar: Fix 64bit MSI message address handling
Mar 25, 2019
4eb9e87
video: hgafb: fix potential NULL pointer dereference
kengiter Apr 1, 2019
179e70d
video: imsttfb: fix potential NULL pointer dereferences
kengiter Apr 1, 2019
f88e587
block, bfq: increase idling for weight-raised queues
Algodev-github Mar 12, 2019
6862830
PCI: xilinx: Check for __get_free_pages() failure
kengiter Mar 25, 2019
8a53f0f
gpio: gpio-omap: add check for off wake capable gpios
tmlind Mar 25, 2019
182cd3f
dmaengine: idma64: Use actual device for DMA transfers
andy-shev Mar 18, 2019
f3013a8
pwm: tiehrpwm: Update shadow register for disabling PWMs
Mar 12, 2019
ab6ada3
ARM: dts: exynos: Always enable necessary APIO_1V8 and ABB_1V8 regula…
krzk Mar 14, 2019
83b6d80
pwm: Fix deadlock warning when removing PWM device
h2phong Mar 19, 2019
34cf175
ARM: exynos: Fix undefined instruction during Exynos5422 resume
mszyprow Feb 18, 2019
ef36f22
usb: typec: fusb302: Check vconn is off when we start toggling
jwrdegoede Mar 11, 2019
3e729a2
gpio: vf610: Do not share irq_chip
ndreys Mar 11, 2019
4794604
percpu: do not search past bitmap when allocating an area
dennisszhou Feb 21, 2019
e9d38b0
Revert "Bluetooth: Align minimum encryption key size for LE and BR/ED…
gregkh Jun 13, 2019
9091d49
Revert "drm/nouveau: add kconfig option to turn off nouveau legacy co…
gregkh Jun 13, 2019
ff8386d
drm: don't block fb changes for async plane updates
Jun 3, 2019
6351d11
ALSA: seq: Cover unsubscribe_port() in list_mutex
tiwai Apr 12, 2019
a74d0e9
Linux 4.14.126
gregkh Jun 15, 2019
bf47d85
Merge tag 'v4.14.126' into 4.14-2.0.x-imx
MaxKrummenacher Jul 8, 2019
286d8c4
mm: proc: task_mmu: silence compiler warning
MaxKrummenacher Jul 12, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
4 changes: 2 additions & 2 deletions Documentation/ABI/testing/sysfs-devices-system-cpu
Original file line number Diff line number Diff line change
Expand Up @@ -380,6 +380,7 @@ What: /sys/devices/system/cpu/vulnerabilities
/sys/devices/system/cpu/vulnerabilities/spectre_v2
/sys/devices/system/cpu/vulnerabilities/spec_store_bypass
/sys/devices/system/cpu/vulnerabilities/l1tf
/sys/devices/system/cpu/vulnerabilities/mds
Date: January 2018
Contact: Linux kernel mailing list <linux-kernel@vger.kernel.org>
Description: Information about CPU vulnerabilities
Expand All @@ -392,8 +393,7 @@ Description: Information about CPU vulnerabilities
"Vulnerable" CPU is affected and no mitigation in effect
"Mitigation: $M" CPU is affected and mitigation $M is in effect

Details about the l1tf file can be found in
Documentation/admin-guide/l1tf.rst
See also: Documentation/admin-guide/hw-vuln/index.rst

What: /sys/devices/system/cpu/smt
/sys/devices/system/cpu/smt/active
Expand Down
13 changes: 13 additions & 0 deletions Documentation/admin-guide/hw-vuln/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
========================
Hardware vulnerabilities
========================

This section describes CPU vulnerabilities and provides an overview of the
possible mitigations along with guidance for selecting mitigations if they
are configurable at compile, boot or run time.

.. toctree::
:maxdepth: 1

l1tf
mds
Original file line number Diff line number Diff line change
Expand Up @@ -445,6 +445,7 @@ The default is 'cond'. If 'l1tf=full,force' is given on the kernel command
line, then 'always' is enforced and the kvm-intel.vmentry_l1d_flush
module parameter is ignored and writes to the sysfs file are rejected.

.. _mitigation_selection:

Mitigation selection guide
--------------------------
Expand Down Expand Up @@ -556,7 +557,7 @@ When nested virtualization is in use, three operating systems are involved:
the bare metal hypervisor, the nested hypervisor and the nested virtual
machine. VMENTER operations from the nested hypervisor into the nested
guest will always be processed by the bare metal hypervisor. If KVM is the
bare metal hypervisor it wiil:
bare metal hypervisor it will:

- Flush the L1D cache on every switch from the nested hypervisor to the
nested virtual machine, so that the nested hypervisor's secrets are not
Expand Down
308 changes: 308 additions & 0 deletions Documentation/admin-guide/hw-vuln/mds.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,308 @@
MDS - Microarchitectural Data Sampling
======================================

Microarchitectural Data Sampling is a hardware vulnerability which allows
unprivileged speculative access to data which is available in various CPU
internal buffers.

Affected processors
-------------------

This vulnerability affects a wide range of Intel processors. The
vulnerability is not present on:

- Processors from AMD, Centaur and other non Intel vendors

- Older processor models, where the CPU family is < 6

- Some Atoms (Bonnell, Saltwell, Goldmont, GoldmontPlus)

- Intel processors which have the ARCH_CAP_MDS_NO bit set in the
IA32_ARCH_CAPABILITIES MSR.

Whether a processor is affected or not can be read out from the MDS
vulnerability file in sysfs. See :ref:`mds_sys_info`.

Not all processors are affected by all variants of MDS, but the mitigation
is identical for all of them so the kernel treats them as a single
vulnerability.

Related CVEs
------------

The following CVE entries are related to the MDS vulnerability:

============== ===== ===================================================
CVE-2018-12126 MSBDS Microarchitectural Store Buffer Data Sampling
CVE-2018-12130 MFBDS Microarchitectural Fill Buffer Data Sampling
CVE-2018-12127 MLPDS Microarchitectural Load Port Data Sampling
CVE-2019-11091 MDSUM Microarchitectural Data Sampling Uncacheable Memory
============== ===== ===================================================

Problem
-------

When performing store, load, L1 refill operations, processors write data
into temporary microarchitectural structures (buffers). The data in the
buffer can be forwarded to load operations as an optimization.

Under certain conditions, usually a fault/assist caused by a load
operation, data unrelated to the load memory address can be speculatively
forwarded from the buffers. Because the load operation causes a fault or
assist and its result will be discarded, the forwarded data will not cause
incorrect program execution or state changes. But a malicious operation
may be able to forward this speculative data to a disclosure gadget which
allows in turn to infer the value via a cache side channel attack.

Because the buffers are potentially shared between Hyper-Threads cross
Hyper-Thread attacks are possible.

Deeper technical information is available in the MDS specific x86
architecture section: :ref:`Documentation/x86/mds.rst <mds>`.


Attack scenarios
----------------

Attacks against the MDS vulnerabilities can be mounted from malicious non
priviledged user space applications running on hosts or guest. Malicious
guest OSes can obviously mount attacks as well.

Contrary to other speculation based vulnerabilities the MDS vulnerability
does not allow the attacker to control the memory target address. As a
consequence the attacks are purely sampling based, but as demonstrated with
the TLBleed attack samples can be postprocessed successfully.

Web-Browsers
^^^^^^^^^^^^

It's unclear whether attacks through Web-Browsers are possible at
all. The exploitation through Java-Script is considered very unlikely,
but other widely used web technologies like Webassembly could possibly be
abused.


.. _mds_sys_info:

MDS system information
-----------------------

The Linux kernel provides a sysfs interface to enumerate the current MDS
status of the system: whether the system is vulnerable, and which
mitigations are active. The relevant sysfs file is:

/sys/devices/system/cpu/vulnerabilities/mds

The possible values in this file are:

.. list-table::

* - 'Not affected'
- The processor is not vulnerable
* - 'Vulnerable'
- The processor is vulnerable, but no mitigation enabled
* - 'Vulnerable: Clear CPU buffers attempted, no microcode'
- The processor is vulnerable but microcode is not updated.

The mitigation is enabled on a best effort basis. See :ref:`vmwerv`
* - 'Mitigation: Clear CPU buffers'
- The processor is vulnerable and the CPU buffer clearing mitigation is
enabled.

If the processor is vulnerable then the following information is appended
to the above information:

======================== ============================================
'SMT vulnerable' SMT is enabled
'SMT mitigated' SMT is enabled and mitigated
'SMT disabled' SMT is disabled
'SMT Host state unknown' Kernel runs in a VM, Host SMT state unknown
======================== ============================================

.. _vmwerv:

Best effort mitigation mode
^^^^^^^^^^^^^^^^^^^^^^^^^^^

If the processor is vulnerable, but the availability of the microcode based
mitigation mechanism is not advertised via CPUID the kernel selects a best
effort mitigation mode. This mode invokes the mitigation instructions
without a guarantee that they clear the CPU buffers.

This is done to address virtualization scenarios where the host has the
microcode update applied, but the hypervisor is not yet updated to expose
the CPUID to the guest. If the host has updated microcode the protection
takes effect otherwise a few cpu cycles are wasted pointlessly.

The state in the mds sysfs file reflects this situation accordingly.


Mitigation mechanism
-------------------------

The kernel detects the affected CPUs and the presence of the microcode
which is required.

If a CPU is affected and the microcode is available, then the kernel
enables the mitigation by default. The mitigation can be controlled at boot
time via a kernel command line option. See
:ref:`mds_mitigation_control_command_line`.

.. _cpu_buffer_clear:

CPU buffer clearing
^^^^^^^^^^^^^^^^^^^

The mitigation for MDS clears the affected CPU buffers on return to user
space and when entering a guest.

If SMT is enabled it also clears the buffers on idle entry when the CPU
is only affected by MSBDS and not any other MDS variant, because the
other variants cannot be protected against cross Hyper-Thread attacks.

For CPUs which are only affected by MSBDS the user space, guest and idle
transition mitigations are sufficient and SMT is not affected.

.. _virt_mechanism:

Virtualization mitigation
^^^^^^^^^^^^^^^^^^^^^^^^^

The protection for host to guest transition depends on the L1TF
vulnerability of the CPU:

- CPU is affected by L1TF:

If the L1D flush mitigation is enabled and up to date microcode is
available, the L1D flush mitigation is automatically protecting the
guest transition.

If the L1D flush mitigation is disabled then the MDS mitigation is
invoked explicit when the host MDS mitigation is enabled.

For details on L1TF and virtualization see:
:ref:`Documentation/admin-guide/hw-vuln//l1tf.rst <mitigation_control_kvm>`.

- CPU is not affected by L1TF:

CPU buffers are flushed before entering the guest when the host MDS
mitigation is enabled.

The resulting MDS protection matrix for the host to guest transition:

============ ===== ============= ============ =================
L1TF MDS VMX-L1FLUSH Host MDS MDS-State

Don't care No Don't care N/A Not affected

Yes Yes Disabled Off Vulnerable

Yes Yes Disabled Full Mitigated

Yes Yes Enabled Don't care Mitigated

No Yes N/A Off Vulnerable

No Yes N/A Full Mitigated
============ ===== ============= ============ =================

This only covers the host to guest transition, i.e. prevents leakage from
host to guest, but does not protect the guest internally. Guests need to
have their own protections.

.. _xeon_phi:

XEON PHI specific considerations
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The XEON PHI processor family is affected by MSBDS which can be exploited
cross Hyper-Threads when entering idle states. Some XEON PHI variants allow
to use MWAIT in user space (Ring 3) which opens an potential attack vector
for malicious user space. The exposure can be disabled on the kernel
command line with the 'ring3mwait=disable' command line option.

XEON PHI is not affected by the other MDS variants and MSBDS is mitigated
before the CPU enters a idle state. As XEON PHI is not affected by L1TF
either disabling SMT is not required for full protection.

.. _mds_smt_control:

SMT control
^^^^^^^^^^^

All MDS variants except MSBDS can be attacked cross Hyper-Threads. That
means on CPUs which are affected by MFBDS or MLPDS it is necessary to
disable SMT for full protection. These are most of the affected CPUs; the
exception is XEON PHI, see :ref:`xeon_phi`.

Disabling SMT can have a significant performance impact, but the impact
depends on the type of workloads.

See the relevant chapter in the L1TF mitigation documentation for details:
:ref:`Documentation/admin-guide/hw-vuln/l1tf.rst <smt_control>`.


.. _mds_mitigation_control_command_line:

Mitigation control on the kernel command line
---------------------------------------------

The kernel command line allows to control the MDS mitigations at boot
time with the option "mds=". The valid arguments for this option are:

============ =============================================================
full If the CPU is vulnerable, enable all available mitigations
for the MDS vulnerability, CPU buffer clearing on exit to
userspace and when entering a VM. Idle transitions are
protected as well if SMT is enabled.

It does not automatically disable SMT.

full,nosmt The same as mds=full, with SMT disabled on vulnerable
CPUs. This is the complete mitigation.

off Disables MDS mitigations completely.

============ =============================================================

Not specifying this option is equivalent to "mds=full".


Mitigation selection guide
--------------------------

1. Trusted userspace
^^^^^^^^^^^^^^^^^^^^

If all userspace applications are from a trusted source and do not
execute untrusted code which is supplied externally, then the mitigation
can be disabled.


2. Virtualization with trusted guests
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The same considerations as above versus trusted user space apply.

3. Virtualization with untrusted guests
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

The protection depends on the state of the L1TF mitigations.
See :ref:`virt_mechanism`.

If the MDS mitigation is enabled and SMT is disabled, guest to host and
guest to guest attacks are prevented.

.. _mds_default_mitigations:

Default mitigations
-------------------

The kernel default mitigations for vulnerable processors are:

- Enable CPU buffer clearing

The kernel does not by default enforce the disabling of SMT, which leaves
SMT systems vulnerable when running untrusted code. The same rationale as
for L1TF applies.
See :ref:`Documentation/admin-guide/hw-vuln//l1tf.rst <default_mitigations>`.
6 changes: 2 additions & 4 deletions Documentation/admin-guide/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,14 +17,12 @@ etc.
kernel-parameters
devices

This section describes CPU vulnerabilities and provides an overview of the
possible mitigations along with guidance for selecting mitigations if they
are configurable at compile, boot or run time.
This section describes CPU vulnerabilities and their mitigations.

.. toctree::
:maxdepth: 1

l1tf
hw-vuln/index

Here is a set of documents aimed at users who are trying to track down
problems and bugs in particular.
Expand Down
Loading