1. 21 9月, 2010 5 次提交
  2. 17 9月, 2010 1 次提交
  3. 15 9月, 2010 2 次提交
  4. 14 9月, 2010 1 次提交
  5. 09 9月, 2010 22 次提交
  6. 07 9月, 2010 5 次提交
  7. 04 9月, 2010 2 次提交
    • N
      tty: fix tty_line must not be equal to number of allocated tty pointers in tty driver · 6eb68d6f
      Nathael Pajani 提交于
      I found a bug "by chance" in drivers/char/tty_io.c
      
      I mean "by chance" because I was just reading the code of the
      tty_find_polling_driver() to make a new tty_find_by_name() function.
      
      In tty_find_polling_driver() the driver actually test "tty_line <=
      p->num" while num refers to the number of struct tty_struct pointers
      allocated for the p->ttys (p is a tty_driver), and tty_line is scanned
      in a tty name, which can be for example ttyS2. Then tty_line equals 2.
      And if p->num is 2, we have only p->ttys[0] and p->ttys[1], but no
      p->ttys[2].
      
      This is actually unharmful, for tty_find_polling_driver() is used only
      in drivers/serial/kgdboc.c, and there's a test over there to find a
      console with a matching index, which will never happen.
      
      This is still a bug anyway.
      Signed-off-by: NNathael Pajani <nathael.pajani@ed3l.fr>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      6eb68d6f
    • F
      vt: Fix console corruption on driver hand-over. · 9fc2b2d0
      Francisco Jerez 提交于
      After 02f0777a "vc_origin" is no
      longer reset to the screen buffer before calling the con_init() hook
      of the new console driver.
      
      If the old driver wasn't using a fixed scanout buffer (e.g. the case
      of vgacon) "vc_origin" may be a pointer to a VRAM location, and its
      contents aren't guaranteed to be preserved after calling con_deinit()
      on the old driver and con_init() on the new driver, i.e. the
      subsequent console resize may fill the framebuffer with garbage.
      
      It can be reproduced in the transition from vgacon to the nouveau
      framebuffer driver: in that case the legacy VGA aperture "vc_origin"
      points to becomes unreadable after fbcon_init().
      
      This patch reverts the mentioned commit. To avoid the problem it
      intended to fix, stop using "vc_scr_end" in vc_do_resize() to
      calculate how many rows we have to copy (actually the code looks
      simpler this way without the help of "vc_scr_end").
      Signed-off-by: NFrancisco Jerez <currojerez@riseup.net>
      Cc: qiaochong <qiaochong@loongson.cn>
      Cc: Greg Kroah-Hartman <gregkh@suse.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Alan Cox <alan@linux.intel.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      9fc2b2d0
  8. 29 8月, 2010 1 次提交
    • A
      Input: use PIT_TICK_RATE in vt beep ioctl · 2c4e9671
      Arnd Bergmann 提交于
      The KIOCSOUND and KDMKTONE ioctls are based on the CLOCK_TICK_RATE,
      which is architecture and sometimes configuration specific.
      
      In practice, most user applications assume that it is actually defined
      as the i8253 PIT base clock of 1193182 Hz, which is true on some
      architectures but not on others.
      
      This patch makes the vt code use the PIT frequency on all
      architectures, which is much more well-defined.  It will change the
      behavior of user applications sending the beep ioctl on all
      architectures that define CLOCK_TICK_RATE different from
      PIT_TICK_RATE.
      
      The original breakage was introduced in commit bcc8ca09 "Adapt
      drivers/char/vt_ioctl.c to non-x86".  Hopefully, reverting this change
      will make the frequency correct in more cases than it will make it
      incorrect.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NAlan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
      2c4e9671
  9. 24 8月, 2010 1 次提交