kernel-hacking-2024-linux-s.../drivers/char
Vasiliy Kulikov b522f02184 agp: fix OOM and buffer overflow
page_count is copied from userspace.  agp_allocate_memory() tries to
check whether this number is too big, but doesn't take into account the
wrap case.  Also agp_create_user_memory() doesn't check whether
alloc_size is calculated from num_agp_pages variable without overflow.
This may lead to allocation of too small buffer with following buffer
overflow.

Another problem in agp code is not addressed in the patch - kernel memory
exhaustion (AGPIOC_RESERVE and AGPIOC_ALLOCATE ioctls).  It is not checked
whether requested pid is a pid of the caller (no check in agpioc_reserve_wrap()).
Each allocation is limited to 16KB, though, there is no per-process limit.
This might lead to OOM situation, which is not even solved in case of the
caller death by OOM killer - the memory is allocated for another (faked) process.

Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-04-21 11:51:04 +10:00
..
agp agp: fix OOM and buffer overflow 2011-04-21 11:51:04 +10:00
hw_random Merge branches 'defcfg', 'drivers' and 'cyberpro-next' of master.kernel.org:/home/rmk/linux-2.6-arm 2011-03-17 18:48:35 -07:00
ipmi Fix common misspellings 2011-03-31 11:26:23 -03:00
mwave Fix common misspellings 2011-03-31 11:26:23 -03:00
pcmcia Fix common misspellings 2011-03-31 11:26:23 -03:00
tpm char/tpm: Fix unitialized usage of data buffer 2011-03-29 09:45:34 -07:00
xilinx_hwicap Fix common misspellings 2011-03-31 11:26:23 -03:00
apm-emulation.c
applicom.c
applicom.h
bfin-otp.c
briq_panel.c
bsr.c
ds1302.c
ds1620.c
dsp56k.c
dtlk.c
efirtc.c
generic_nvram.c
genrtc.c
hangcheck-timer.c
hpet.c
i8k.c
Kconfig drivers/char: add MSM smd_pkt driver 2011-03-23 19:46:38 -07:00
lp.c
Makefile drivers/char: add MSM smd_pkt driver 2011-03-23 19:46:38 -07:00
mbcs.c
mbcs.h Fix common misspellings 2011-03-31 11:26:23 -03:00
mem.c drivers/char/mem.c: clean up the code 2011-03-23 19:46:40 -07:00
misc.c
mmtimer.c posix-timers: Cleanup namespace 2011-02-02 15:28:19 +01:00
msm_smd_pkt.c drivers/char: add MSM smd_pkt driver 2011-03-23 19:46:38 -07:00
mspec.c
nsc_gpio.c
nvram.c
nwbutton.c Fix common misspellings 2011-03-31 11:26:23 -03:00
nwbutton.h
nwflash.c
pc8736x_gpio.c
ppdev.c
ps3flash.c
ramoops.c ramoops: fix types, remove typecasts 2011-01-13 08:03:23 -08:00
random.c Fix common misspellings 2011-03-31 11:26:23 -03:00
raw.c
rtc.c
scc.h
scx200_gpio.c
snsc.c
snsc.h headers: kobject.h redux 2011-01-10 08:51:44 -08:00
snsc_event.c
sonypi.c Fix common misspellings 2011-03-31 11:26:23 -03:00
tb0219.c
tlclk.c
toshiba.c
ttyprintk.c tty: now phase out the ioctl file pointer for good 2011-02-17 11:59:56 -08:00
uv_mmtimer.c
viotape.c
virtio_console.c virtio: console: Don't access vqs if device was unplugged 2011-03-06 10:44:13 -08:00