* Kernel oops with asus_acpi module
@ 2005-06-05 21:40 Hanno Böck
2005-06-06 16:50 ` randy_dunlap
[not found] ` <200506061929.24663.mail@hboeck.de>
0 siblings, 2 replies; 11+ messages in thread
From: Hanno Böck @ 2005-06-05 21:40 UTC (permalink / raw)
To: acpi-devel, linux-kernel
Matthias Hentges has postet this a while ago to the acpi4asus-list:
http://sourceforge.net/mailarchive/forum.php?thread_id=7214924&forum_id=33295
I have a Samsung P30. The problem happens on both rc and mm-kernels at the
moment.
I hope this can be fixed before 2.6.12.
The asus_acpi module freezes the system on boot if compiled into the kernel.
If loaded as a module, I get this error:
Asus Laptop ACPI Extras version 0.29
Unable to handle kernel NULL pointer dereference at virtual address 00000000
printing eip:
e19e9391
*pde = 00000000
Oops: 0000 [#1]
PREEMPT
Modules linked in: asus_acpi eth1394 ipw2100 ohci1394 ieee1394 yenta_socket
rsrc_nonstatic pcmcia_core ehci_hcd uhci_hcd usbcore
CPU: 0
EIP: 0060:[<e19e9391>] Not tainted VLI
EFLAGS: 00210203 (2.6.12-rc5-mm2)
EIP is at asus_hotk_get_info+0x1aa/0x79a [asus_acpi]
eax: 00000000 ebx: dfe0d000 ecx: 00000002 edx: 00000003
esi: 00000000 edi: e19fca60 ebp: d7e9c800 esp: dae19ec0
ds: 007b es: 007b ss: 0068
Process modprobe (pid: 12174, threadinfo=dae18000 task=d13bf0b0)
Stack: 00000000 00200296 c011c497 00000000 ffffffd8 dfe0d000 00000000 00000000
c05a9c88 c011c273 dae19f6c dfc37c3c 00000000 c0294036 00000000 00000000
00000000 dae19f54 00200246 0000002b 00000300 0000030c 00000000 00000000
Call Trace:
[<c011c497>] release_console_sem+0xe7/0x110
[<c011c273>] vprintk+0x1f3/0x2b0
[<c0294036>] sub_alloc+0xb6/0x1b0
[<e19e9a3f>] asus_hotk_add+0x8b/0x143 [asus_acpi]
[<c02e0f01>] acpi_bus_driver_init+0x29/0x50
[<c02e0fbc>] acpi_driver_attach+0x59/0x9d
[<e19e9b41>] asus_acpi_init+0x4a/0x72 [asus_acpi]
[<c0138212>] sys_init_module+0xc2/0x200
[<c01030d7>] sysenter_past_esp+0x54/0x75
Code: e1 e8 f4 2c 73 de 5e 5f a1 10 eb 9f e1 ba 03 00 00 00 bf 60 ca 9f e1 89
d1 c7 40 14 12 00 00 00 8b 45 08 89 04 24 89 c6 49 78 08 <ac> ae 75 08 84 c0
75 f5 31 c0 eb 04 19 c0 0c 01 85 c0 75 11 a1
If you need further info, please contact me.
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: Kernel oops with asus_acpi module 2005-06-05 21:40 Kernel oops with asus_acpi module Hanno Böck @ 2005-06-06 16:50 ` randy_dunlap [not found] ` <200506061929.24663.mail@hboeck.de> 1 sibling, 0 replies; 11+ messages in thread From: randy_dunlap @ 2005-06-06 16:50 UTC (permalink / raw) To: Hanno Böck; +Cc: acpi-devel, linux-kernel On Sun, 5 Jun 2005 23:40:40 +0200 Hanno Böck wrote: | Matthias Hentges has postet this a while ago to the acpi4asus-list: | http://sourceforge.net/mailarchive/forum.php?thread_id=7214924&forum_id=33295 | | I have a Samsung P30. The problem happens on both rc and mm-kernels at the | moment. | I hope this can be fixed before 2.6.12. | | The asus_acpi module freezes the system on boot if compiled into the kernel. | | If loaded as a module, I get this error: | | Asus Laptop ACPI Extras version 0.29 | Unable to handle kernel NULL pointer dereference at virtual address 00000000 | printing eip: | e19e9391 | *pde = 00000000 | Oops: 0000 [#1] | PREEMPT | Modules linked in: asus_acpi eth1394 ipw2100 ohci1394 ieee1394 yenta_socket | rsrc_nonstatic pcmcia_core ehci_hcd uhci_hcd usbcore | CPU: 0 | EIP: 0060:[<e19e9391>] Not tainted VLI | EFLAGS: 00210203 (2.6.12-rc5-mm2) | EIP is at asus_hotk_get_info+0x1aa/0x79a [asus_acpi] | eax: 00000000 ebx: dfe0d000 ecx: 00000002 edx: 00000003 | esi: 00000000 edi: e19fca60 ebp: d7e9c800 esp: dae19ec0 | ds: 007b es: 007b ss: 0068 | Process modprobe (pid: 12174, threadinfo=dae18000 task=d13bf0b0) | Stack: 00000000 00200296 c011c497 00000000 ffffffd8 dfe0d000 00000000 00000000 | c05a9c88 c011c273 dae19f6c dfc37c3c 00000000 c0294036 00000000 00000000 | 00000000 dae19f54 00200246 0000002b 00000300 0000030c 00000000 00000000 | Call Trace: | [<c011c497>] release_console_sem+0xe7/0x110 | [<c011c273>] vprintk+0x1f3/0x2b0 | [<c0294036>] sub_alloc+0xb6/0x1b0 | [<e19e9a3f>] asus_hotk_add+0x8b/0x143 [asus_acpi] | [<c02e0f01>] acpi_bus_driver_init+0x29/0x50 | [<c02e0fbc>] acpi_driver_attach+0x59/0x9d | [<e19e9b41>] asus_acpi_init+0x4a/0x72 [asus_acpi] | [<c0138212>] sys_init_module+0xc2/0x200 | [<c01030d7>] sysenter_past_esp+0x54/0x75 | Code: e1 e8 f4 2c 73 de 5e 5f a1 10 eb 9f e1 ba 03 00 00 00 bf 60 ca 9f e1 89 | d1 c7 40 14 12 00 00 00 8b 45 08 89 04 24 89 c6 49 78 08 <ac> ae 75 08 84 c0 | 75 f5 31 c0 eb 04 19 c0 0c 01 85 c0 75 11 a1 | | | If you need further info, please contact me. What processor (x86) type/configs is your kernel compiled for? Can you repeat with Magic SysRq enabled (if not already) and set log level to 9 (echo 9 > /proc/sysrq-trigger or Alt-SysRq-9). That should provide more console log info for us.... then post that log. (or check your log files, this log info may already be in some of them) Thanks, --- ~Randy ^ permalink raw reply [flat|nested] 11+ messages in thread
[parent not found: <200506061929.24663.mail@hboeck.de>]
[parent not found: <20050606114531.763eec37.rdunlap@xenotime.net>]
[parent not found: <200506062050.42632.mail@hboeck.de>]
* Re: Kernel oops with asus_acpi module [not found] ` <200506062050.42632.mail@hboeck.de> @ 2005-06-06 20:54 ` randy_dunlap 2005-06-06 21:32 ` Karol Kozimor 0 siblings, 1 reply; 11+ messages in thread From: randy_dunlap @ 2005-06-06 20:54 UTC (permalink / raw) To: Hanno Böck, acpi-devel, linux-kernel; +Cc: sziwan, julien.lerouge (back to mailing lists + asus acpi maintainers) On Mon, 6 Jun 2005 20:50:42 +0200 Hanno Böck wrote: | Am Montag, 6. Juni 2005 20:45 schrieben Sie: | > 2 or 3 things: | > | > a. I can't match that Code line to any code in my | > compiler asus_acpi.o file. What version of gcc are you using? | > Can you send me your asus_acpi.o file? | | Attached. | I'm using gcc4 (but that's probably not the reason, because matthias hentges, | who has a debian-system, has the same problem) Well, gcc4 does have some known issues with the Linux kernel, although I don't know the specifics of them. | > | > b. That Code line is different from the first one that you posted. | > That doesn't make much sense to me.... | | Don't know why, but maybe because I recompiled the kernel with | debugging-support? OK, I see that part. I'm including a patch for you to try. Can you apply and test it and report back on it, please? --- From: Randy Dunlap <rdunlap@xenotime.net> linux-2612-rc5-mm2 model->string.pointer was NULL, so printk of it caused an oops. Handle ASUS ACPI string descriptor with 0 length or NULL pointer by trying the Samsung P30 support code exception handling. Signed-off-by: Randy Dunlap <rdunlap@xenotime.net> diffstat:= drivers/acpi/asus_acpi.c | 11 ++++++++++- 1 files changed, 10 insertions(+), 1 deletion(-) diff -Naurp ./drivers/acpi/asus_acpi.c~asus_models ./drivers/acpi/asus_acpi.c --- ./drivers/acpi/asus_acpi.c~asus_models 2005-03-01 23:37:53.000000000 -0800 +++ ./drivers/acpi/asus_acpi.c 2005-06-06 13:51:40.000000000 -0700 @@ -993,6 +993,7 @@ static int __init asus_hotk_get_info(voi /* Samsung P30 has a device with a valid _HID whose INIT does not * return anything. Catch this one and any similar here */ if (buffer.pointer == NULL) { +try_p30: if (asus_info && /* Samsung P30 */ strncmp(asus_info->oem_table_id, "ODEM", 4) == 0) { hotk->model = P30; @@ -1009,7 +1010,15 @@ static int __init asus_hotk_get_info(voi model = (union acpi_object *) buffer.pointer; if (model->type == ACPI_TYPE_STRING) { - printk(KERN_NOTICE " %s model detected, ", model->string.pointer); + if (!model->string.length || !model->string.pointer) { + printk(KERN_WARNING " model string length or pointer " + "is 0, trying P30 exceptions (%u, %p)\n", + model->string.length, model->string.pointer); + goto try_p30; + } + else + printk(KERN_NOTICE " %s model detected, ", + model->string.pointer); } hotk->model = END_MODEL; ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Kernel oops with asus_acpi module 2005-06-06 20:54 ` randy_dunlap @ 2005-06-06 21:32 ` Karol Kozimor 2005-06-06 21:47 ` Hanno Böck 0 siblings, 1 reply; 11+ messages in thread From: Karol Kozimor @ 2005-06-06 21:32 UTC (permalink / raw) To: Hanno Böck; +Cc: randy_dunlap, acpi-devel, linux-kernel, julien.lerouge Thus wrote randy_dunlap: > OK, I see that part. > > I'm including a patch for you to try. Can you apply and test it > and report back on it, please? May I see the DSDT? The Samsung P30 INIT method referenced in asus_hotk_get_info() is not supposed to return anything, not even an empty string. I believe the new ACPICA implicit return might be interfering. Here's the relevant part of what I based the code on: Method (INIT, 1, NotSerialized) { Store (One, ATKP) If (LNot (LLess (PCBV, 0x02))) { If (And (WBTF, 0x1F)) { Or (WBTF, 0x20, WBTF) } And (WBTF, 0xE0, WBTF) } If (And (WBTF, 0x40)) { If (And (WBTF, 0xBF)) { WLED (0x81) } Else { WLED (0x80) } } Else { WLED (0x80) } } Best regards, -- Karol 'sziwan' Kozimor sziwan@hell.org.pl ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: Kernel oops with asus_acpi module 2005-06-06 21:32 ` Karol Kozimor @ 2005-06-06 21:47 ` Hanno Böck 2005-06-06 22:21 ` [ACPI] " Karol Kozimor 0 siblings, 1 reply; 11+ messages in thread From: Hanno Böck @ 2005-06-06 21:47 UTC (permalink / raw) To: randy_dunlap, acpi-devel, linux-kernel, julien.lerouge Am Montag, 6. Juni 2005 23:32 schrieb Karol Kozimor: > May I see the DSDT? The Samsung P30 INIT method referenced in > asus_hotk_get_info() is not supposed to return anything, not even an empty > string. I believe the new ACPICA implicit return might be interfering. > Here's the relevant part of what I based the code on: http://www.schokokeks.org/~hanno/dsdt_p30 ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [ACPI] Re: Kernel oops with asus_acpi module 2005-06-06 21:47 ` Hanno Böck @ 2005-06-06 22:21 ` Karol Kozimor 2005-06-07 17:46 ` Hanno Böck 0 siblings, 1 reply; 11+ messages in thread From: Karol Kozimor @ 2005-06-06 22:21 UTC (permalink / raw) To: Hanno Böck; +Cc: randy_dunlap, acpi-devel, linux-kernel, julien.lerouge Thus wrote Hanno Böck: > Am Montag, 6. Juni 2005 23:32 schrieb Karol Kozimor: > > May I see the DSDT? The Samsung P30 INIT method referenced in > > asus_hotk_get_info() is not supposed to return anything, not even an empty > > string. I believe the new ACPICA implicit return might be interfering. > > Here's the relevant part of what I based the code on: Thanks. This might also help: --- a/drivers/acpi/asus_acpi.c 2005-04-26 00:38:20.000000000 +0200 +++ b/drivers/acpi/asus_acpi.c 2005-06-07 00:18:17.000000000 +0200 @@ -992,7 +992,7 @@ /* Samsung P30 has a device with a valid _HID whose INIT does not * return anything. Catch this one and any similar here */ - if (buffer.pointer == NULL) { + if (buffer.pointer == NULL || buffer.length == 0) { if (asus_info && /* Samsung P30 */ strncmp(asus_info->oem_table_id, "ODEM", 4) == 0) { hotk->model = P30; But I'd like to get the full oops with the matching asus_acpi.o file also (might be off the list). Best regards, -- Karol 'sziwan' Kozimor sziwan@hell.org.pl ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [ACPI] Re: Kernel oops with asus_acpi module 2005-06-06 22:21 ` [ACPI] " Karol Kozimor @ 2005-06-07 17:46 ` Hanno Böck 2005-06-07 22:16 ` randy_dunlap 2005-06-11 12:19 ` Karol Kozimor 0 siblings, 2 replies; 11+ messages in thread From: Hanno Böck @ 2005-06-07 17:46 UTC (permalink / raw) To: randy_dunlap, acpi-devel, linux-kernel, julien.lerouge Am Dienstag, 7. Juni 2005 00:21 schrieb Karol Kozimor: > Thanks. This might also help: Doesn't help (randys fix also didn't). > But I'd like to get the full oops with the matching asus_acpi.o file also > (might be off the list). Can you tell me what a full oops is, how I generate it? Then I can do so (I'm not a kernel-dev). ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [ACPI] Re: Kernel oops with asus_acpi module 2005-06-07 17:46 ` Hanno Böck @ 2005-06-07 22:16 ` randy_dunlap 2005-06-11 12:17 ` Karol Kozimor 2005-06-11 12:19 ` Karol Kozimor 1 sibling, 1 reply; 11+ messages in thread From: randy_dunlap @ 2005-06-07 22:16 UTC (permalink / raw) To: Hanno Böck; +Cc: acpi-devel, linux-kernel, julien.lerouge On Tue, 7 Jun 2005 19:46:17 +0200 Hanno Böck wrote: | Am Dienstag, 7. Juni 2005 00:21 schrieb Karol Kozimor: | > Thanks. This might also help: | Doesn't help (randys fix also didn't). were there any additional kernel log messages? there should have been. | > But I'd like to get the full oops with the matching asus_acpi.o file also | > (might be off the list). Karol, did you see the beginning of the thread? http://lkml.org/lkml/2005/6/5/101 | Can you tell me what a full oops is, how I generate it? Then I can do so (I'm | not a kernel-dev). --- ~Randy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [ACPI] Re: Kernel oops with asus_acpi module 2005-06-07 22:16 ` randy_dunlap @ 2005-06-11 12:17 ` Karol Kozimor 2005-10-11 9:01 ` Hanno Böck 0 siblings, 1 reply; 11+ messages in thread From: Karol Kozimor @ 2005-06-11 12:17 UTC (permalink / raw) To: randy_dunlap; +Cc: Hanno Böck, acpi-devel, linux-kernel, julien.lerouge Thus wrote randy_dunlap: > | > But I'd like to get the full oops with the matching asus_acpi.o file also > | > (might be off the list). > > Karol, did you see the beginning of the thread? > http://lkml.org/lkml/2005/6/5/101 > Yeah, but I didn't get the .o file :) Please don't trim the Cc: list, or I'll be slow to respond. Best regards, -- Karol 'sziwan' Kozimor sziwan@hell.org.pl ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [ACPI] Re: Kernel oops with asus_acpi module 2005-06-11 12:17 ` Karol Kozimor @ 2005-10-11 9:01 ` Hanno Böck 0 siblings, 0 replies; 11+ messages in thread From: Hanno Böck @ 2005-10-11 9:01 UTC (permalink / raw) To: Karol Kozimor; +Cc: randy_dunlap, acpi-devel, linux-kernel, julien.lerouge [-- Attachment #1: Type: text/plain, Size: 193 bytes --] There's still no fix for the asus_acpi-crash in 2.6.14_rc4. Will this be sorted out before 2.6.14? -- Hanno Böck Blog: http://www.hboeck.de/ GPG: 3DBD3B20 Jabber: jabber@hboeck.de [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [ACPI] Re: Kernel oops with asus_acpi module 2005-06-07 17:46 ` Hanno Böck 2005-06-07 22:16 ` randy_dunlap @ 2005-06-11 12:19 ` Karol Kozimor 1 sibling, 0 replies; 11+ messages in thread From: Karol Kozimor @ 2005-06-11 12:19 UTC (permalink / raw) To: Hanno Böck; +Cc: randy_dunlap, acpi-devel, linux-kernel, julien.lerouge Thus wrote Hanno Böck: > Am Dienstag, 7. Juni 2005 00:21 schrieb Karol Kozimor: > > Thanks. This might also help: > Doesn't help (randys fix also didn't). > > > But I'd like to get the full oops with the matching asus_acpi.o file also > > (might be off the list). > > Can you tell me what a full oops is, how I generate it? Then I can do so (I'm > not a kernel-dev). What I meant was the full log output (which, AFAIK, you did supply) and the asus_acpi.o file from the kernel build that the specific oops report was for, which only Randy received, I guess. Anyway, I'll do a debug patch shortly. Best regards, -- Karol 'sziwan' Kozimor sziwan@hell.org.pl ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2005-10-11 9:02 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-06-05 21:40 Kernel oops with asus_acpi module Hanno Böck
2005-06-06 16:50 ` randy_dunlap
[not found] ` <200506061929.24663.mail@hboeck.de>
[not found] ` <20050606114531.763eec37.rdunlap@xenotime.net>
[not found] ` <200506062050.42632.mail@hboeck.de>
2005-06-06 20:54 ` randy_dunlap
2005-06-06 21:32 ` Karol Kozimor
2005-06-06 21:47 ` Hanno Böck
2005-06-06 22:21 ` [ACPI] " Karol Kozimor
2005-06-07 17:46 ` Hanno Böck
2005-06-07 22:16 ` randy_dunlap
2005-06-11 12:17 ` Karol Kozimor
2005-10-11 9:01 ` Hanno Böck
2005-06-11 12:19 ` Karol Kozimor
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox