Skip to contentSkip to conversation

oops from my test driver at poll_wait (__pollwait from select.c)

DISCUSSION Shivu V 1 participant 2 messages Jan 4, 2004 – Jan 5, 2004

lore
Share & tools
lore

Shivu V

author
#0 lore raw

And the Kernel version is : 2.4.18-14

-Shivu

Quoted 95 lines · --- Shivu V

Hello,

I am a newbie in driver development. In one of my test
driver, I am getting the oops at poll_wait. The ksymoops o/p is as follows :

Unable to handle kernel NULL pointer dereference at
virtual address 00000005
c01190f5
*pde = 00000000
Oops: 0002
CPU:    0
EIP:    0010:[<c01190f5>]    Not tainted

Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010046
eax: f7ae0f18 ebx: 00000001 ecx: f6d40014 edx:
f6d4000c
esi: 00000246 edi: 00000000 ebp: f6d47ef4 esp:
f6d47ec0
ds: 0018 es: 0018 ss: 0018
Process test (pid: 1228, stackpage=f6d47000)

Stack: f72b3520 f7ae0e80 f8e144c6 f6d8f0e0 f7ae0f18
f6d47fa8 f6d47f04 00000000
      c012bee9 f6f513c0 f6d8f0e0 00000000 f6d47fa8
f6d47f24 f8e14987 f6d8f0e0
      f6d47fa8 420d2220 f6d93900 c01169f8 00000212
00001000 00000145 f6d41000
Call Trace: [<f8e144c6>] daemon_poll [mytest] 0x78

(0xf6d47ec8))
[<c012bee9>] handle_mm_fault [kernel] 0x89 (0xf6d47ee0))
[<f8e14987>] mytest_poll [mytest] 0x6d (0xf6d47ef8)) [<c01169f8>] do_page_fault [kernel] 0x138 (0xf6d47f0c))
[<c0150255>] do_pollfd [kernel] 0x95 (0xf6d47f28)) [<c015035f>] do_pollfd [kernel] 0x19f (0xf6d47f44)) [<c01504d3>] sys_poll [kernel] 0x163 (0xf6d47f78)) [<c010910f>] system_call [kernel] 0x33 (0xf6d47fc0))

Code: 89 4b 04 89 5a 08 89 41 04 89 08 56 9d 8b 1c

24
8b 74 24 04

Quoted 7 lines
Quoted 7 lines

EIP; c01190f5 <add_wait_queue+15/30> <=====

eax; f7ae0f18 <_end+3770f398/384564e0>
ecx; f6d40014 <_end+3696e494/384564e0>
edx; f6d4000c <_end+3696e48c/384564e0>
ebp; f6d47ef4 <_end+36976374/384564e0>
esp; f6d47ec0 <_end+36976340/384564e0>

Trace; f8e144c6 <[mytest]daemon_poll+78/d6> Trace; c012bee9 <handle_mm_fault+89/160> Trace; f8e14987 <[mytest]mytest_poll+6d/96> Trace; c01169f8 <do_page_fault+138/4cf> Trace; c0150255 <do_pollfd+95/a0>
Trace; c015035f <do_poll+ff/110>
Trace; c01504d3 <sys_poll+163/300>
Trace; c010910f <system_call+33/38>

Code; c01190f5 <add_wait_queue+15/30>
00000000 <_EIP>:
Code; c01190f5 <add_wait_queue+15/30> <=====
0: 89 4b 04 mov
%ecx,0x4(%ebx)
<=====
Code; c01190f8 <add_wait_queue+18/30>
3: 89 5a 08 mov
%ebx,0x8(%edx)
Code; c01190fb <add_wait_queue+1b/30>
6: 89 41 04 mov
%eax,0x4(%ecx)

Code;  c01190fe <add_wait_queue+1e/30>
  9:   89 08                     mov    %ecx,(%eax)
Code;  c0119100 <add_wait_queue+20/30>
  b:   56                        push   %esi
Code;  c0119101 <add_wait_queue+21/30>
  c:   9d                        popf  Code; 

c0119102
<add_wait_queue+22/30>
d: 8b 1c 24 mov
(%esp,1),%ebx
Code; c0119105 <add_wait_queue+25/30>
10: 8b 74 24 04 mov
0x4(%esp,1),%esi

2 warnings and 5 errors issued. Results may not be reliable.

Any ideas ??

Quoted 8 lines

Thanks
-Shivu

__________________________________
Do you Yahoo!?
Find out what made the Top Yahoo! Searches of 2003
http://search.yahoo.com/top2003

__________________________________
Do you Yahoo!?
Find out what made the Top Yahoo! Searches of 2003
http://search.yahoo.com/top2003

author
#1 lore raw

I just tested it on kernel version 2.4.21-4.ELsmp and it works fine.

-Shivu

Quoted 119 lines · --- Shivu V

And the Kernel version is : 2.4.18-14

-Shivu

Quoted 8 lines · --- Shivu V

Hello,

I am a newbie in driver development. In one of my test
driver, I am getting the oops at poll_wait. The ksymoops o/p is as follows :

Unable to handle kernel NULL pointer dereference

at

Quoted 9 lines

virtual address 00000005
c01190f5
*pde = 00000000

Oops: 0002
CPU:    0
EIP:    0010:[<c01190f5>]    Not tainted

Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010046
eax: f7ae0f18 ebx: 00000001 ecx: f6d40014

edx:

Quoted 2 lines

f6d4000c
esi: 00000246 edi: 00000000 ebp: f6d47ef4

esp:

Quoted 4 lines

f6d47ec0
ds: 0018 es: 0018 ss: 0018
Process test (pid: 1228, stackpage=f6d47000)

Stack: f72b3520 f7ae0e80 f8e144c6 f6d8f0e0

f7ae0f18

Quoted 10 lines

f6d47fa8 f6d47f04 00000000

      c012bee9 f6f513c0 f6d8f0e0 00000000 f6d47fa8
f6d47f24 f8e14987 f6d8f0e0
      f6d47fa8 420d2220 f6d93900 c01169f8 00000212
00001000 00000145 f6d41000
Call Trace: [<f8e144c6>] daemon_poll [mytest] 0x78

(0xf6d47ec8))
[<c012bee9>] handle_mm_fault [kernel] 0x89 (0xf6d47ee0))
[<f8e14987>] mytest_poll [mytest] 0x6d

(0xf6d47ef8))

Quoted 4 lines

[<c01169f8>] do_page_fault [kernel] 0x138 (0xf6d47f0c))
[<c0150255>] do_pollfd [kernel] 0x95 (0xf6d47f28)) [<c015035f>] do_pollfd [kernel] 0x19f

(0xf6d47f44))

Quoted 2 lines

[<c01504d3>] sys_poll [kernel] 0x163 (0xf6d47f78)) [<c010910f>] system_call [kernel] 0x33

(0xf6d47fc0))

Quoted 22 lines
Code: 89 4b 04 89 5a 08 89 41 04 89 08 56 9d 8b 1c

24
8b 74 24 04

Quoted 7 lines
Quoted 7 lines

EIP; c01190f5 <add_wait_queue+15/30> <=====

eax; f7ae0f18 <_end+3770f398/384564e0>
ecx; f6d40014 <_end+3696e494/384564e0>
edx; f6d4000c <_end+3696e48c/384564e0>
ebp; f6d47ef4 <_end+36976374/384564e0>
esp; f6d47ec0 <_end+36976340/384564e0>

Trace; f8e144c6 <[mytest]daemon_poll+78/d6> Trace; c012bee9 <handle_mm_fault+89/160> Trace; f8e14987 <[mytest]mytest_poll+6d/96> Trace; c01169f8 <do_page_fault+138/4cf> Trace; c0150255 <do_pollfd+95/a0>
Trace; c015035f <do_poll+ff/110>
Trace; c01504d3 <sys_poll+163/300>
Trace; c010910f <system_call+33/38>

Quoted 14 lines

Code; c01190f5 <add_wait_queue+15/30> 00000000 <_EIP>:
Code; c01190f5 <add_wait_queue+15/30> <=====
0: 89 4b 04 mov
%ecx,0x4(%ebx)
<=====
Code; c01190f8 <add_wait_queue+18/30>
3: 89 5a 08 mov
%ebx,0x8(%edx)
Code; c01190fb <add_wait_queue+1b/30>
6: 89 41 04 mov
%eax,0x4(%ecx)
Code; c01190fe <add_wait_queue+1e/30>
9: 89 08 mov

%ecx,(%eax)

Quoted 13 lines
Code;  c0119100 <add_wait_queue+20/30>
  b:   56                        push   %esi
Code;  c0119101 <add_wait_queue+21/30>
  c:   9d                        popf  Code; 

c0119102
<add_wait_queue+22/30>
d: 8b 1c 24 mov
(%esp,1),%ebx
Code; c0119105 <add_wait_queue+25/30>
10: 8b 74 24 04 mov
0x4(%esp,1),%esi

Quoted 1 line

2 warnings and 5 errors issued. Results may not

be

Quoted 6 lines

reliable.

Any ideas ??

Quoted 8 lines

Thanks
-Shivu

__________________________________
Do you Yahoo!?
Find out what made the Top Yahoo! Searches of 2003
http://search.yahoo.com/top2003

Quoted 11 lines

__________________________________
Do you Yahoo!?
Find out what made the Top Yahoo! Searches of 2003
http://search.yahoo.com/top2003
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected] More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

__________________________________
Do you Yahoo!?
Find out what made the Top Yahoo! Searches of 2003
http://search.yahoo.com/top2003