summary refs log tree commit diff
path: root/arch/x86/mm
diff options
context:
space:
mode:
authorSamuel CUELLA <samuel.cuella@supinfo.com>2009-03-10 12:56:00 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2009-03-10 15:55:12 -0700
commit16b71fdf97599f1b1b7f38418ee9922d9f117396 (patch)
tree86ceac6117f5a678aaa177bbcdf8d84d2559010c /arch/x86/mm
parent9233ecc5c4b5f31921d914b3ef3baa3dc1ae4cc6 (diff)
downloadlinux-16b71fdf97599f1b1b7f38418ee9922d9f117396.tar.gz
i810: fix kernel crash fix when struct fb_var_screeninfo is supplied
Prevent the kernel from being crashed by a divide-by-zero operation when
supplied an incorrectly filled 'struct fb_var_screeninfo' from userland.

Previously i810_main.c:1005 (i810_check_params) was using the global
'yres' symbol previously defined at i810_main.c:145 as a module parameter
value holder (i810_main.c:2174).  If i810fb is compiled-in or if this
param doesn't get a default value, this direct usage leads to a
divide-by-zero at i810_main.c:1005 (i810_check_params).  The patch simply
replace the 'yres' global, perhaps undefined symbol usage by a given
parameter structure lookup.

This problem occurs with directfb, mplayer -vo fbdev, SDL library.
It was also reported ( but non solved ) at:

	http://mail.directfb.org/pipermail/directfb-dev/2008-March/004050.html

Signed-off-by: Samuel CUELLA <samuel.cuella@supinfo.com>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/x86/mm')
0 files changed, 0 insertions, 0 deletions