android_kernel_motorola_sm6375/drivers
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Alan Stern 2cc7eb6562 HID: Fix slab-out-of-bounds read in hid_field_extract
commit 8ec321e96e056de84022c032ffea253431a83c3c upstream.

The syzbot fuzzer found a slab-out-of-bounds bug in the HID report
handler.  The bug was caused by a report descriptor which included a
field with size 12 bits and count 4899, for a total size of 7349
bytes.

The usbhid driver uses at most a single-page 4-KB buffer for reports.
In the test there wasn't any problem about overflowing the buffer,
since only one byte was received from the device.  Rather, the bug
occurred when the HID core tried to extract the data from the report
fields, which caused it to try reading data beyond the end of the
allocated buffer.

This patch fixes the problem by rejecting any report whose total
length exceeds the HID_MAX_BUFFER_SIZE limit (minus one byte to allow
for a possible report index).  In theory a device could have a report
longer than that, but if there was such a thing we wouldn't handle it
correctly anyway.

Reported-and-tested-by: syzbot+09ef48aa58261464b621@syzkaller.appspotmail.com
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
CC: <stable@vger.kernel.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-01-14 20:08:23 +01:00
..
accessibility
acpi ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100 2020-01-09 10:20:02 +01:00
amba ARM updates for 5.4-rc: 2019-10-23 06:26:33 -04:00
android binder: fix incorrect calculation for num_valid 2019-12-17 19:55:33 +01:00
ata libata: Fix retrieving of active qcs 2020-01-09 10:19:59 +01:00
atm
auxdisplay
base firmware_loader: Fix labels with comma for builtin firmware 2019-12-31 16:45:39 +01:00
bcma
block xen/blkback: Avoid unmapping unmapped grant pages 2020-01-09 10:20:07 +01:00
bluetooth Bluetooth: btusb: fix PM leak in error case of setup 2020-01-09 10:20:04 +01:00
bus bus: ti-sysc: Fix missing reset delay handling 2020-01-12 12:21:27 +01:00
cdrom cdrom: respect device capabilities during opening action 2020-01-04 19:18:25 +01:00
char tpm: Handle negative priv->response_len in tpm_common_read() 2020-01-14 20:08:21 +01:00
clk clk: Move clk_core_reparent_orphans() under CONFIG_OF 2020-01-12 12:21:39 +01:00
clocksource clocksource: riscv: add notrace to riscv_sched_clock 2020-01-09 10:19:59 +01:00
connector
counter
cpufreq cpufreq: Register drivers only after CPU devices have been registered 2019-12-31 16:45:26 +01:00
cpuidle cpuidle: use first valid target residency as poll time 2019-12-17 19:56:23 +01:00
crypto crypto: vmx - Avoid weird build failures 2019-12-31 16:45:45 +01:00
dax
dca
devfreq PM / devfreq: Check NULL governor in available_governors_show 2020-01-09 10:20:01 +01:00
dio
dma dmaengine: virt-dma: Fix access after free in vchan_complete() 2020-01-09 10:20:00 +01:00
dma-buf dma-buf: Fix memory leak in sync_file_merge() 2019-12-21 11:04:48 +01:00
edac EDAC/ghes: Fix grain calculation 2019-12-31 16:45:16 +01:00
eisa
extcon extcon: sm5502: Reset registers during initialization 2019-12-31 16:44:04 +01:00
firewire net: add annotations on hh->hh_len lockless accesses 2020-01-09 10:20:06 +01:00
firmware efi/earlycon: Remap entire framebuffer after page initialization 2020-01-12 12:21:16 +01:00
fpga
fsi fsi: core: Fix small accesses and unaligned offsets via sysfs 2019-12-31 16:45:09 +01:00
gnss
gpio gpio: Handle counting of Freescale chipselects 2020-01-12 12:21:12 +01:00
gpu drm/exynos: gsc: add missed component_del 2020-01-12 12:21:41 +01:00
greybus
hid HID: Fix slab-out-of-bounds read in hid_field_extract 2020-01-14 20:08:23 +01:00
hsi
hv Drivers: hv: vmbus: Fix crash handler reset of Hyper-V synic 2020-01-04 19:18:21 +01:00
hwmon hwmon: (ina3221) Fix read timeout issue 2019-10-28 18:46:55 -07:00
hwspinlock
hwtracing intel_th: msu: Fix window switching without windows 2019-12-31 16:46:09 +01:00
i2c i2c: fix bus recovery stop mode timing 2020-01-14 20:08:18 +01:00
i3c
ide
idle
iio iio: adc: max9611: Fix too short conversion time delay 2020-01-09 10:19:43 +01:00
infiniband IB/mlx5: Fix steering rule of drop and count 2020-01-09 10:19:50 +01:00
input Input: ili210x - handle errors from input_mt_init_slots() 2020-01-04 19:17:34 +01:00
interconnect interconnect: qcom: qcs404: Walk the list safely on node removal 2019-12-17 19:55:39 +01:00
iommu iommu/dma: Relax locking in iommu_dma_prepare_msi() 2020-01-12 12:21:38 +01:00
ipack
irqchip irqchip: ingenic: Error out if IRQ domain creation failed 2020-01-04 19:17:22 +01:00
isdn net: use skb_queue_empty_lockless() in poll() handlers 2019-10-28 13:33:41 -07:00
leds leds: trigger: netdev: fix handling on interface rename 2020-01-04 19:17:05 +01:00
lightnvm
macintosh cpufreq: Use per-policy frequency QoS 2019-10-21 02:05:21 +02:00
mailbox mailbox: imx: Fix Tx doorbell shutdown path 2020-01-04 19:18:30 +01:00
mcb
md md: raid1: check rdev before reference in raid1_sync_request func 2020-01-09 10:19:48 +01:00
media media: usb: fix memory leak in af9005_identify_state 2020-01-09 10:20:05 +01:00
memory
memstick
message
mfd mfd: mt6397: Fix probe after changing mt6397-core 2019-10-24 08:49:25 +01:00
misc habanalabs: remove variable 'val' set but not used 2020-01-12 12:21:31 +01:00
mmc mmc: sdhci-of-esdhc: re-implement erratum A-009204 workaround 2020-01-04 19:19:19 +01:00
mtd mtd: rawnand: Change calculating of position page containing BBM 2019-12-17 19:55:54 +01:00
mux
net net/mlx5: DR, Init lists that are used in rule's member 2020-01-12 12:21:51 +01:00
nfc NFC: nxp-nci: Fix probing without ACPI 2019-12-31 16:41:49 +01:00
ntb
nubus
nvdimm libnvdimm/btt: fix variable 'rc' set but not used 2020-01-04 19:18:12 +01:00
nvme nvme/pci: Fix read queue count 2020-01-09 10:19:43 +01:00
nvmem nvmem: imx-ocotp: reset error status on probe 2019-12-31 16:44:42 +01:00
of of: overlay: add_changeset_property() memory leak 2020-01-09 10:20:03 +01:00
opp opp: Reinitialize the list_kref before adding the static OPPs again 2019-10-23 10:58:44 +05:30
oprofile
parisc parisc: Remove 32-bit DMA enforcement from sba_iommu 2019-10-14 21:44:26 +02:00
parport parport: load lowlevel driver if ports not found 2019-12-31 16:45:25 +01:00
pci PCI: Add a helper to check Power Resource Requirements _PR3 existence 2020-01-09 10:19:52 +01:00
pcmcia
perf perf/smmuv3: Remove the leftover put_cpu() in error path 2020-01-12 12:21:38 +01:00
phy phy: renesas: rcar-gen3-usb2: Use platform_get_irq_optional() for optional irq 2020-01-09 10:20:05 +01:00
pinctrl pinctrl: pinmux: fix a possible null pointer in pinmux_can_be_used_for_gpio 2020-01-12 12:21:28 +01:00
platform platform/x86: pcengines-apuv2: fix simswap GPIO assignment 2020-01-12 12:21:42 +01:00
pnp
power power: supply: cpcap-battery: Check voltage before orderly_poweroff 2019-12-31 16:44:12 +01:00
powercap powercap: intel_rapl: add NULL pointer check to rapl_mmio_cpu_online() 2020-01-14 20:08:18 +01:00
pps
ps3
ptp ptp: fix the race between the release of ptp_clock and cdev 2020-01-04 19:18:48 +01:00
pwm pwm: bcm-iproc: Prevent unloading the driver module while in use 2019-11-08 18:38:06 +01:00
rapidio
ras
regulator regulator: rn5t618: fix module aliases 2020-01-12 12:21:34 +01:00
remoteproc
reset reset: Do not register resource data for missing resets 2020-01-12 12:21:21 +01:00
rpmsg rpmsg: glink: Free pending deferred work on remove 2019-12-21 11:04:41 +01:00
rtc rtc: sun6i: Add support for RTC clocks on R40 2020-01-14 20:08:21 +01:00
s390 s390/qeth: don't return -ENOTSUPP to userspace 2020-01-12 12:21:44 +01:00
sbus
scsi scsi: lpfc: Fix rpi release when deleting vport 2020-01-09 10:20:01 +01:00
sfi
sh
siox
slimbus
soc soc: mediatek: cmdq: fixup wrong input order of write api 2019-12-13 08:42:40 +01:00
soundwire soundwire: intel: fix PDI/stream mapping for Bulk 2019-12-31 16:45:11 +01:00
spi spi: nxp-fspi: Ensure width is respected in spi-mem operations 2020-01-12 12:21:34 +01:00
spmi
ssb
staging staging: axis-fifo: add unspecified HAS_IOMEM dependency 2020-01-12 12:21:35 +01:00
target scsi: target: iscsi: Wait for all commands to finish before freeing a session 2020-01-04 19:18:17 +01:00
tc
tee
thermal thermal: Fix deadlock in thermal thermal_zone_device_check 2019-12-13 08:43:21 +01:00
thunderbolt thunderbolt: Power cycle the router if NVM authentication fails 2019-12-04 22:30:50 +01:00
tty tty: serial: msm_serial: Fix lockup for sysrq and oops 2020-01-09 10:20:05 +01:00
uio
usb usb: chipidea: host: Disable port power only if previously enabled 2020-01-14 20:08:19 +01:00
vfio vfio/pci: call irq_bypass_unregister_producer() before freeing irq 2019-12-21 11:04:48 +01:00
vhost vhost/vsock: accept only packets with the right dst_cid 2020-01-04 19:19:18 +01:00
video video/hdmi: Fix AVI bar unpack 2019-12-17 19:56:42 +01:00
virt
virtio virtio-balloon: fix managed page counts when migrating pages between zones 2019-12-17 19:55:56 +01:00
visorbus
vlynq
vme
w1
watchdog watchdog: tqmx86_wdt: Fix build error 2020-01-09 10:20:03 +01:00
xen xen/balloon: fix ballooned page accounting without hotplug enabled 2020-01-09 10:19:51 +01:00
zorro
Kconfig
Makefile