kernel-ark/drivers/char
Bernhard Walle c2c88f109e [PATCH] Initialise SAK member for each virtual console to prevent oops
Initialise the SAK member of the vc_cons variable on all virtual terminals,
not only the first one.  This prevents an oops when trying Sysrq-C on e.g.
the second virtual terminal:

  kernel BUG at kernel/workqueue.c:212!
  invalid opcode: 0000 [1] SMP
  CPU 0
  Modules linked in: i915 drm deflate zlib_deflate twofish twofish_common serpent blowfish des ce
  Pid: 0, comm: swapper Not tainted 2.6.21-rc3-default #15
  RIP: 0010:[<ffffffff8028c955>]  [<ffffffff8028c955>] queue_work+0x32/0x51
  RSP: 0018:ffffffff805fada8  EFLAGS: 00010013
  RAX: ffffffff80683f38 RBX: ffffffff804ae700 RCX: 0000000000000000
  RDX: 0000000000000000 RSI: ffffffff80683f30 RDI: ffff81000134a840
  RBP: 0000000000000001 R08: 0000000000000005 R09: 0000000000000002
  R10: ffffffff805990e0 R11: ffff810037f4c0f0 R12: 000000000000006b
  R13: ffff81007aa23000 R14: 0000000000000001 R15: 0000000000000096
  FS:  0000000000000000(0000) GS:ffffffff804d8000(0000) knlGS:0000000000000000
  CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b
  CR2: 00002b72026e9000 CR3: 0000000079175000 CR4: 00000000000006e0
  Process swapper (pid: 0, threadinfo ffffffff8059e000, task ffffffff80490840)
  Stack:  0000000000000096 ffffffff803635db ffffffff805fadf8 0000000000000001
   ffff8100013c2e40 0000000000000025 ffff81007c931c00 ffff81007aa23000
   0000000000000001 ffffffff8035e3ee 0000000000000092 ffff810037cc8000
  Call Trace:
   <IRQ>  [<ffffffff803635db>] __handle_sysrq+0x98/0x129
   [<ffffffff8035e3ee>] kbd_event+0x32e/0x56a
   [<ffffffff8037d502>] input_event+0x422/0x44a
   [<ffffffff80381d71>] atkbd_interrupt+0x449/0x503
   [<ffffffff8037a42d>] serio_interrupt+0x37/0x6f
   [<ffffffff8037affb>] i8042_interrupt+0x1f4/0x20a
   [<ffffffff8026bd20>] smp_send_timer_broadcast_ipi+0x2d/0x4e
   [<ffffffff8020eee5>] handle_IRQ_event+0x25/0x53
   [<ffffffff802a924c>] handle_edge_irq+0xe4/0x128
   [<ffffffff802562ac>] call_softirq+0x1c/0x28
   [<ffffffff802632eb>] do_IRQ+0x6c/0xd3
   [<ffffffff8024f4e7>] mwait_idle+0x0/0x45
   [<ffffffff80255631>] ret_from_intr+0x0/0xa
   <EOI>  [<ffffffff80248a4d>] datagram_poll+0x0/0xc8
   [<ffffffff8024f529>] mwait_idle+0x42/0x45
   [<ffffffff80242c05>] cpu_idle+0x8b/0xae
   [<ffffffff805a8779>] start_kernel+0x2b9/0x2c5
   [<ffffffff805a815e>] _sinittext+0x15e/0x162

  Code: 0f 0b eb fe 48 8b 07 48 63 d2 48 f7 d0 48 8b 3c d0 e8 13 ff
  RIP  [<ffffffff8028c955>] queue_work+0x32/0x51
   RSP <ffffffff805fada8>
  Kernel panic - not syncing: Aiee, killing interrupt handler!

Signed-off-by: Bernhard Walle <bwalle@suse.de>
Acked-by: Eric Biederman <ebiederm@xmission.com>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-03-16 19:25:06 -07:00
..
agp [AGPGART] fix compile errors 2007-02-27 00:36:00 -05:00
drm
hw_random
ip2 Fix bogus 'inline' in drivers/char/ip2/i2lib.c 2007-02-21 11:18:26 -08:00
ipmi [PATCH] ipmi: check, if default ports are accessible on PPC 2007-03-05 07:57:53 -08:00
mwave [PATCH] mwave: interesting flags savings 2007-02-20 17:10:14 -08:00
pcmcia [PATCH] Fix buffer overflow in Omnikey CardMan 4040 driver (CVE-2007-0005) 2007-03-06 18:01:04 -08:00
rio rio: typo in bitwise AND expression. 2007-02-17 18:57:09 +01:00
tpm
watchdog Merge master.kernel.org:/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog 2007-03-14 15:28:31 -07:00
.gitignore
amiserial.c
apm-emulation.c
applicom.c
applicom.h
briq_panel.c
cd1865.h
ChangeLog
consolemap.c
cp437.uni
cs5535_gpio.c
cyclades.c [PATCH] cyclades: return closing_wait 2007-03-05 07:57:50 -08:00
decserial.c
defkeymap.c_shipped
defkeymap.map
digi1.h
digi.h
digiFep1.h
digiPCI.h
ds1286.c [CHAR] ds1286: Fix handling of seconds in RTC_ALM_SET ioctl. 2007-03-08 01:10:30 +00:00
ds1302.c
ds1620.c
dsp56k.c
dtlk.c
ec3104_keyb.c
efirtc.c
epca.c [PATCH] char/epca.c: remove unused function 2007-03-05 07:57:53 -08:00
epca.h
epcaconfig.h
esp.c
generic_nvram.c
generic_serial.c
genrtc.c
hangcheck-timer.c
hpet.c
hvc_beat.c
hvc_console.c [PATCH] Make hvc_console.c compile on non-powerpc: Remove NO_IRQ 2007-02-26 12:58:33 -08:00
hvc_console.h
hvc_iseries.c
hvc_rtas.c
hvc_vio.c
hvcs.c
hvsi.c
i8k.c
ip27-rtc.c
isicom.c
istallion.c
Kconfig [PATCH] minor updat to tlclk Kconfig entry 2007-03-06 18:02:22 -08:00
keyboard.c
lcd.c [MIPS] Add MTD device support for Cobalt 2007-02-20 17:11:55 +00:00
lcd.h [MIPS] Add MTD device support for Cobalt 2007-02-20 17:11:55 +00:00
lp.c
Makefile
mbcs.c
mbcs.h
mem.c
misc.c
mmtimer.c
moxa.c
mspec.c
mxser_new.c
mxser_new.h
mxser.c
mxser.h
n_hdlc.c
n_r3964.c
n_tty.c
nsc_gpio.c
nvram.c
nwbutton.c
nwbutton.h
nwflash.c
pc8736x_gpio.c
ppdev.c
pty.c
random.c
raw.c
riscom8_reg.h
riscom8.c
riscom8.h
rocket_int.h
rocket.c
rocket.h
rtc.c
scc.h
scx200_gpio.c
selection.c
ser_a2232.c
ser_a2232.h
ser_a2232fw.ax
ser_a2232fw.h
serial167.c
snsc_event.c
snsc.c
snsc.h
sonypi.c
specialix_io8.h
specialix.c
stallion.c
sx.c
sx.h
sxboards.h
sxwindow.h
synclink_gt.c
synclink.c
synclinkmp.c
sysrq.c
tb0219.c
tipar.c
tlclk.c
toshiba.c
tty_io.c [PATCH] tty_io: fix race in master pty close/slave pty close path 2007-03-01 14:53:39 -08:00
tty_ioctl.c
vc_screen.c
viocons.c
viotape.c
vme_scc.c
vr41xx_giu.c
vt_ioctl.c [PATCH] swsusp: fix suspend when console is in VT_AUTO+KD_GRAPHICS mode 2007-03-16 19:25:05 -07:00
vt.c [PATCH] Initialise SAK member for each virtual console to prevent oops 2007-03-16 19:25:06 -07:00