From: "Måns Rullgård" <mru@kth.se>
To: linux-kernel@vger.kernel.org
Subject: Oops in register_chrdev, what did I do?
Date: Sun, 01 Aug 2004 22:01:10 +0200 [thread overview]
Message-ID: <yw1xwu0i1vcp.fsf@kth.se> (raw)
While experimenting a bit with a small kernel module, I got this
oops. Digging further, I found that /proc/devices had an entry saying
248 <NULL>
which would indicate that I passed a NULL name to register_chrdev(),
only I didn't. I used a string constant, so I can't see what changed
it to NULL along the way.
What am I missing here?
Unable to handle kernel NULL pointer dereference at virtual address 00000000
c014cad4
*pde = 00000000
Oops: 0000 [#1]
CPU: 0
EIP: 0060:[<c014cad4>] Tainted: P
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00210282 (2.6.6)
eax: e0f93414 ebx: e0f93410 ecx: 00000000 edx: 00000000
esi: 00000000 edi: e0f93414 ebp: de43357c esp: d7487f64
ds: 007b es: 007b ss: 0068
Stack: 00000000 e0f93414 fffffff4 000000f8 c0332c74 d7486000 e8969b80 d7487fa0
e896b023 000000f8 e89691c9 e8969b20 fffffffc c0332c74 d7486000 c0332c5c
c012ac2a 00000001 00000000 40152000 00000003 00000000 d7486000 c0103d29
Call Trace:
[<e896b023>] init_foo+0x23/0x40 [foo]
[<c012ac2a>] sys_init_module+0x105/0x211
[<c0103d29>] sysenter_past_esp+0x52/0x71
Code: ac aa 84 c0 75 fa ba 2f 00 00 00 8b 74 24 04 89 d0 88 c4 ac
>>EIP; c014cad4 <register_chrdev+57/f8> <=====
>>eax; e0f93414 <pg0+20ba9414/3fc14000>
>>ebx; e0f93410 <pg0+20ba9410/3fc14000>
>>edi; e0f93414 <pg0+20ba9414/3fc14000>
>>ebp; de43357c <pg0+1e04957c/3fc14000>
>>esp; d7487f64 <pg0+1709df64/3fc14000>
Trace; e896b023 <pg0+28581023/3fc14000>
Trace; c012ac2a <sys_init_module+105/211>
Trace; c0103d29 <sysenter_past_esp+52/71>
Code; c014cad4 <register_chrdev+57/f8>
00000000 <_EIP>:
Code; c014cad4 <register_chrdev+57/f8> <=====
0: ac lods %ds:(%esi),%al <=====
Code; c014cad5 <register_chrdev+58/f8>
1: aa stos %al,%es:(%edi)
Code; c014cad6 <register_chrdev+59/f8>
2: 84 c0 test %al,%al
Code; c014cad8 <register_chrdev+5b/f8>
4: 75 fa jne 0 <_EIP>
Code; c014cada <register_chrdev+5d/f8>
6: ba 2f 00 00 00 mov $0x2f,%edx
Code; c014cadf <register_chrdev+62/f8>
b: 8b 74 24 04 mov 0x4(%esp,1),%esi
Code; c014cae3 <register_chrdev+66/f8>
f: 89 d0 mov %edx,%eax
Code; c014cae5 <register_chrdev+68/f8>
11: 88 c4 mov %al,%ah
Code; c014cae7 <register_chrdev+6a/f8>
13: ac lods %ds:(%esi),%al
--
Måns Rullgård
mru@kth.se
next reply other threads:[~2004-08-01 20:01 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-08-01 20:01 Måns Rullgård [this message]
2004-08-02 1:09 ` Oops in register_chrdev, what did I do? Tommy Reynolds
2004-08-02 8:15 ` Måns Rullgård
2004-08-02 9:36 ` Måns Rullgård
2004-08-02 9:39 ` Arjan van de Ven
2004-08-02 10:09 ` Måns Rullgård
2004-08-02 10:10 ` Arjan van de Ven
2004-08-02 12:53 ` Måns Rullgård
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=yw1xwu0i1vcp.fsf@kth.se \
--to=mru@kth.se \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.