public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Re: 2.5.69+bk: oops in apmd after waking up from suspend mode
@ 2003-05-19 12:16 mikpe
  2003-05-19 12:31 ` Alex Riesen
  2003-05-19 21:57 ` Zwane Mwaikambo
  0 siblings, 2 replies; 19+ messages in thread
From: mikpe @ 2003-05-19 12:16 UTC (permalink / raw)
  To: alexander.riesen, sfr; +Cc: linux-kernel, linux-laptop

On Wed, 14 May 2003 11:48:13 +0200, Alex Riesen wrote:
>I have an old Compaq Armada 1592DT. The thing goes automagically into
>suspend mode after being forgotten for a while. And there is this button
>to wake it up (the blue one, above the keyboard).
>
>Last time i tried to wake it up it produced the attached oops.
>"Unknown key"s are probable the blue button.
>After printing out the oops, the system went back into suspend.
>
>-alex
>
>Suspending devices
>Suspending device c03219ac
>Unable to handle kernel NULL pointer dereference at virtual address 00000090
> printing eip:
>c011459f
>*pde = 00000000
>Oops: 0000 [#1]
>CPU:    0
>EIP:    0060:[<c011459f>]    Not tainted
>EFLAGS: 00010202
>EIP is at fix_processor_context+0x5f/0x100
>eax: 0000007c   ebx: c5f0e000   ecx: 00000002   edx: 00000000
>esi: 00000060   edi: 00000000   ebp: c5f0ff5c   esp: c5f0ff54
>ds: 007b   es: 007b   ss: 0068
>Process kapmd (pid: 4, threadinfo=c5f0e000 task=c5fbc640)

After receiving Alex' .config and gcc version (3.2.3), I've been
able to decipher this. current->mm is NULL in the kapmd task. The call

	load_LDT(&current->mm->context);	/* This does lldt */

in fix_processor_context() computes the address of context as
(current->mm)+0x7c, which is 0x7c. load_LDT_nolock() dereferences
0x7c+0x14 (void *segments = pc->ldt) and the oops follows.

As to _why_ kapmd's current->mm is NULL, I don't know. It isn't
when I test APM suspend in 2.5.69-bk. A lot of code dereferences
current->mm without checking, so I guess current->mm==NULL is a bug.

/Mikael

^ permalink raw reply	[flat|nested] 19+ messages in thread
* 2.5.69+bk: oops in apmd after waking up from suspend mode
@ 2003-05-14  9:48 Alex Riesen
  2003-05-14 13:04 ` mikpe
  0 siblings, 1 reply; 19+ messages in thread
From: Alex Riesen @ 2003-05-14  9:48 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: linux-laptop, linux-kernel

Hi,

I have an old Compaq Armada 1592DT. The thing goes automagically into
suspend mode after being forgotten for a while. And there is this button
to wake it up (the blue one, above the keyboard).

Last time i tried to wake it up it produced the attached oops.
"Unknown key"s are probable the blue button.
After printing out the oops, the system went back into suspend.

-alex

Suspending devices
Suspending device c03219ac
Unable to handle kernel NULL pointer dereference at virtual address 00000090
 printing eip:
c011459f
*pde = 00000000
Oops: 0000 [#1]
CPU:    0
EIP:    0060:[<c011459f>]    Not tainted
EFLAGS: 00010202
EIP is at fix_processor_context+0x5f/0x100
eax: 0000007c   ebx: c5f0e000   ecx: 00000002   edx: 00000000
esi: 00000060   edi: 00000000   ebp: c5f0ff5c   esp: c5f0ff54
ds: 007b   es: 007b   ss: 0068
Process kapmd (pid: 4, threadinfo=c5f0e000 task=c5fbc640)
Stack: c5f0e000 00000060 c5f0ff64 c0114529 c5f0ff78 c01135c8 00000002 00000000 
       00000002 c5f0ff8c c0113845 00000001 c5f0e000 c5f0ffb4 c5f0ffdc c0113aa4 
       00000000 c5fbc640 c0117950 00000000 00000000 c0290000 c030f6b4 00000000 
Call Trace:
 [<c0114529>] restore_processor_state+0x69/0x80
 [<c01135c8>] suspend+0x138/0x200
 [<c0113845>] check_events+0xf5/0x230
 [<c0113aa4>] apm_mainloop+0x94/0xb0
 [<c0117950>] default_wake_function+0x0/0x20
 [<c0117950>] default_wake_function+0x0/0x20
 [<c01141a0>] apm+0x0/0x280
 [<c0114262>] apm+0xc2/0x280
 [<c0107255>] kernel_thread_helper+0x5/0x10

Code: 8b 48 14 8b 42 7c 85 c0 75 0a b9 00 10 29 c0 b8 05 00 00 00 
 <6>note: kapmd[4] exited with preempt_count 2
hda: dma_timer_expiry: dma status == 0x61
atkbd.c: Unknown key (set 2, scancode 0xb6, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x9d, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0x19d, on isa0060/serio0) pressed.
atkbd.c: Unknown key (set 2, scancode 0xb8, on isa0060/serio0) pressed.
hda: timeout waiting for DMA
hda: timeout waiting for DMA
hda: (__ide_dma_test_irq) called while not waiting
atkbd.c: Unknown key (set 2, scancode 0x1b8, on isa0060/serio0) pressed.




^ permalink raw reply	[flat|nested] 19+ messages in thread

end of thread, other threads:[~2003-05-20 21:58 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-05-19 12:16 2.5.69+bk: oops in apmd after waking up from suspend mode mikpe
2003-05-19 12:31 ` Alex Riesen
2003-05-19 14:41   ` Alex Riesen
2003-05-19 15:13     ` Alex Riesen
2003-05-20 10:39     ` Carl-Daniel Hailfinger
2003-05-20 10:48       ` Alex Riesen
2003-05-20 16:34       ` Milton Miller
2003-05-20 17:00         ` Alex Riesen
2003-05-20 17:17           ` Alex Riesen
2003-05-20 20:10             ` Nigel Cunningham
2003-05-20 22:01               ` Zwane Mwaikambo
2003-05-19 21:57 ` Zwane Mwaikambo
  -- strict thread matches above, loose matches on Subject: below --
2003-05-14  9:48 Alex Riesen
2003-05-14 13:04 ` mikpe
2003-05-14 13:46   ` Alex Riesen
2003-05-14 14:03     ` mikpe
2003-05-14 14:11       ` Alex Riesen
2003-05-14 14:37         ` mikpe
2003-05-14 14:45           ` Alex Riesen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox