linux/drivers/staging
Alistair Strachan 778ebfa4c9 staging: android: ashmem: Fix mmap size validation
[ Upstream commit 8632c61456 ]

The ashmem driver did not check that the size/offset of the vma passed
to its .mmap() function was not larger than the ashmem object being
mapped. This could cause mmap() to succeed, even though accessing parts
of the mapping would later fail with a segmentation fault.

Ensure an error is returned by the ashmem_mmap() function if the vma
size is larger than the ashmem object size. This enables safer handling
of the problem in userspace.

Cc: Todd Kjos <tkjos@android.com>
Cc: devel@driverdev.osuosl.org
Cc: linux-kernel@vger.kernel.org
Cc: kernel-team@android.com
Cc: Joel Fernandes <joel@joelfernandes.org>
Signed-off-by: Alistair Strachan <astrachan@google.com>
Acked-by: Joel Fernandes (Google) <joel@joelfernandes.org>
Reviewed-by: Martijn Coenen <maco@android.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-10-10 08:52:06 +02:00
..
android staging: android: ashmem: Fix mmap size validation 2018-10-10 08:52:06 +02:00
board staging: board: Set PM domain before probe 2015-10-29 09:05:57 +09:00
clocking-wizard
comedi staging: comedi: ni_mio_common: fix subdevice flags for PFI subdevice 2018-09-15 09:40:39 +02:00
dgap staging: dgap: add spaces around binary operator '|' 2015-10-24 19:33:42 -07:00
dgnc
emxx_udc staging: emxx_udc: remove incorrect __init annotations 2017-05-14 13:32:58 +02:00
fbtft Staging: fbtft: Fix bug in fbtft-core 2016-10-07 15:23:47 +02:00
fsl-mc staging: fsl-mc: section mismatch bug fix 2015-10-27 14:40:14 +09:00
fwserial
gdm72xx
gdm724x staging: gdm724x: gdm_mux: fix use-after-free on module unload 2017-05-20 14:26:59 +02:00
goldfish
gs_fpgaboot
iio staging: iio: adc: ad7192: fix external frequency setting 2018-02-25 11:03:38 +01:00
lustre staging: lustre: ptlrpc: kfree used instead of kvfree 2018-03-28 18:40:17 +02:00
media media: staging: omap4iss: Include asm/cacheflush.h after generic includes 2018-09-05 09:18:35 +02:00
most staging: most: remove exclusive wait_queue 2015-10-29 08:57:19 +09:00
mt29f_spinand MTD updates for 4.4-rc1: 2015-11-06 11:50:24 -08:00
netlogic staging: netlogic: Do not use multiple blank lines. 2015-10-24 19:38:48 -07:00
nvec staging: nvec: remove managed resource from PS2 driver 2016-11-18 10:48:35 +01:00
octeon staging: octeon: Do not use multiple blank lines. 2015-10-24 19:28:52 -07:00
octeon-usb staging: octeon-usb: Replace kmalloc with kmalloc_array 2015-10-24 19:28:52 -07:00
olpc_dcon
panel misc: panel: properly restore atomic counter on error path 2017-11-18 11:11:07 +01:00
rdma IB/ehca: fix maybe-uninitialized warnings 2017-05-08 07:46:02 +02:00
rtl8188eu staging: rtl8188eu: Fix incorrect response to SIOCGIWESSID 2018-02-03 17:04:29 +01:00
rtl8192e staging: rtl8192e: rtl92e_fill_tx_desc fix write to mapped out memory. 2017-06-17 06:39:35 +02:00
rtl8192u staging: rtl8192u: return -ENOMEM on failed allocation of priv->oldaddr 2018-05-30 07:49:14 +02:00
rtl8712 staging: rtl8712: fixed little endian problem 2017-11-21 09:21:22 +01:00
rtl8723au staging: rtl8723au: core: Remove unnecessary functions 2015-10-29 07:55:17 +09:00
rts5208 staging: rts5208: fix missing error check on call to rtsx_write_register 2018-10-10 08:52:03 +02:00
skein skein: fix coding style 2015-10-24 19:30:12 -07:00
slicoss staging: slicoss: Fixes block comment style 2015-10-27 14:43:31 +09:00
sm750fb staging: sm750fb: remove unused fields from struct sm750_dev 2015-10-27 17:04:57 +09:00
speakup staging: speakup: Replace BUG_ON() with WARN_ON(). 2018-03-22 09:23:19 +01:00
ste_rmi4 staging: ste_rmi4: avoid unused function warnings 2018-02-25 11:03:45 +01:00
unisys staging: unisys: visorhba: fix s-Par to boot with option CONFIG_VMAP_STACK set to y 2018-03-24 10:58:44 +01:00
vme
vt6655 vt6655: Fix a possible sleep-in-atomic bug in vt6655_suspend 2017-12-20 10:05:01 +01:00
vt6656 staging: vt6556: vnt_start Fix missing call to vnt_key_init_table. 2017-07-15 11:57:49 +02:00
wilc1000 staging: wilc1000: fix unchecked return value 2018-03-24 10:58:44 +01:00
wlan-ng staging: wlan-ng: prism2mgmt.c: fixed a double endian conversion before calling hfa384x_drvr_setconfig16, also fixes relative sparse warning 2018-04-13 19:50:05 +02:00
xgifb Staging: xgifb: Remove space after cast 2015-10-24 19:11:30 -07:00
Kconfig staging: ft1000: remove obsolete driver 2015-10-24 19:19:43 -07:00
Makefile staging: ft1000: remove obsolete driver 2015-10-24 19:19:43 -07:00
staging.c