linux/drivers/usb/misc
Antonino A. Daplas e400b6ec4e vt/vgacon: Check if screen resize request comes from userspace
Various console drivers are able to resize the screen via the con_resize()
hook.  This hook is also visible in userspace via the TIOCWINSZ, VT_RESIZE and
VT_RESIZEX ioctl's.  One particular utility, SVGATextMode, expects that
con_resize() of the VGA console will always return success even if the
resulting screen is not compatible with the hardware.  However, this
particular behavior of the VGA console, as reported in Kernel Bugzilla Bug
7513, can cause undefined behavior if the user starts with a console size
larger than 80x25.

To work around this problem, add an extra parameter to con_resize().  This
parameter is ignored by drivers except for vgacon.  If this parameter is
non-zero, then the resize request came from a VT_RESIZE or VT_RESIZEX ioctl
and vgacon will always return success.  If this parameter is zero, vgacon will
return -EINVAL if the requested size is not compatible with the hardware.  The
latter is the more correct behavior.

With this change, SVGATextMode should still work correctly while in-kernel and
stty resize calls can expect correct behavior from vgacon.

Signed-off-by: Antonino Daplas <adaplas@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-10-16 09:43:20 -07:00
..
sisusbvga vt/vgacon: Check if screen resize request comes from userspace 2007-10-16 09:43:20 -07:00
adutux.c USB: missing test for ESHUTDOWN in adutux driver 2007-10-12 14:55:16 -07:00
appledisplay.c Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight 2007-07-22 11:19:46 -07:00
auerswald.c USB: misc: auerswald: clean up urb->status usage 2007-07-19 17:46:07 -07:00
berry_charge.c USB: fix memory leak in berry_charge driver 2007-10-12 14:55:20 -07:00
cypress_cy7c63.c USB: cypress_cy7c63: race disconnect/sysfs read-write leading to following NULL pointer 2007-04-27 13:28:38 -07:00
cytherm.c USB: fix __must_check warnings in drivers/usb/misc/ 2006-09-27 11:58:58 -07:00
emi26_fw.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
emi26.c USB: kmemdup() cleanup in drivers/usb/ 2006-12-01 14:23:27 -08:00
emi62_fw_m.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
emi62_fw_s.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
emi62.c USB: kmemdup() cleanup in drivers/usb/ 2006-12-01 14:23:27 -08:00
ftdi-elan.c USB: ftdi-elan.c: kmalloc + memset conversion to kzalloc 2007-10-12 14:55:15 -07:00
idmouse.c USB: prevent char device open/deregister race 2007-07-12 16:29:48 -07:00
iowarrior.c USB: misc: iowarrior: clean up urb->status usage 2007-07-19 17:46:07 -07:00
Kconfig USB: add driver for iowarrior devices. 2007-02-23 15:03:45 -08:00
ldusb.c USB: misc: ldusb: clean up urb->status usage 2007-07-19 17:46:07 -07:00
legousbtower.c USB: misc: legousbtower: clean up urb->status usage 2007-07-19 17:46:07 -07:00
Makefile USB: add driver for iowarrior devices. 2007-02-23 15:03:45 -08:00
phidget.c USB: Put phidgets driver in a sysfs class 2006-09-27 11:58:49 -07:00
phidget.h USB: Put phidgets driver in a sysfs class 2006-09-27 11:58:49 -07:00
phidgetkit.c USB: misc: phidgetkit: clean up urb->status usage 2007-07-19 17:46:07 -07:00
phidgetmotorcontrol.c USB: misc: phidgetmotorcontrol: clean up urb->status usage 2007-07-19 17:46:07 -07:00
phidgetservo.c USB: Fix oops in PhidgetServo 2006-12-20 10:13:22 -08:00
rio500_usb.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rio500.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
trancevibrator.c USB: fix transvibrator disconnect race 2006-12-20 10:13:23 -08:00
usb_u132.h Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6 2006-12-01 16:41:58 -08:00
usblcd.c USB: misc: usblcd: clean up urb->status usage 2007-07-19 17:46:08 -07:00
usbled.c USB: fix __must_check warnings in drivers/usb/misc/ 2006-09-27 11:58:58 -07:00
usbtest.c USB: misc: usbtest: clean up urb->status usage 2007-07-19 17:46:08 -07:00
uss720.c USB: misc: uss720: clean up urb->status usage 2007-07-19 17:46:08 -07:00