[ENBD] fr1 hangs when trying to access raid device..
Arve Emil Myrås
enbd@lists.community.tummy.com
Wed, 5 Feb 2003 16:49:34 +0100
>Would you please make sure that the loop in do_fr1_request starts:
>
> while (!list_empty (&q->queue_head)) {
Yes it is....
>And my personal guess is that it gets a null request. Please uncomment
>the printk(s) in that function. You many uncomment all printk's, in
>fact! That will give some more clues. I'll have a look at the assembler
>to see if I recognize the point.
Ok.. you got the complete results freom write test in the last mail,
here comes the ksymoops and syslog from a test on reading from md0 with dd .. (still with the " fr1_gendisk.major = major;" added)
Feb 5 16:41:03 vserv kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000010
Feb 5 16:41:03 vserv kernel: fad24d76
Feb 5 16:41:03 vserv kernel: *pde = 00000000
Feb 5 16:41:03 vserv kernel: Oops: 0000
Feb 5 16:41:03 vserv kernel: CPU: 0
Feb 5 16:41:03 vserv kernel: EIP: 0010:[<fad24d76>] Not tainted
Using defaults from ksymoops -t elf32-i386 -a i386
Feb 5 16:41:03 vserv kernel: EFLAGS: 00010046
Feb 5 16:41:03 vserv kernel: eax: 00000000 ebx: 00000000 ecx: f4fac000 edx: f5da9f7c
Feb 5 16:41:03 vserv kernel: esi: f4faded0 edi: c02e8b2c ebp: f4fadeb8 esp: f4fade90
Feb 5 16:41:03 vserv kernel: ds: 0018 es: 0018 ss: 0018
Feb 5 16:41:03 vserv kernel: Process dd (pid: 979, stackpage=f4fad000)
Feb 5 16:41:03 vserv kernel: Stack: fad2799b 00000000 00000004 00000002 c01a31ed 00000000 c02e8b4c 00000286
Feb 5 16:41:03 vserv kernel: f4faded0 c1c01fb8 f4fadef0 c01a21e6 c02e8b2c f4faded0 c011ad7d c02e8b2c
Feb 5 16:41:03 vserv kernel: c02e8b84 c02e8b84 c19ef030 f4fac000 c013a7a1 c02852c0 c0127ba6 c19ef030
Feb 5 16:41:03 vserv kernel: Call Trace: [<fad2799b>] [<c01a31ed>] [<c01a21e6>] [<c011ad7d>] [<c013a7a1>]
Feb 5 16:41:03 vserv kernel: [<c0127ba6>] [<c012843e>] [<c0128820>] [<c0128998>] [<c0128820>] [<c01360b3>]
Feb 5 16:41:03 vserv kernel: [<c0108eff>]
Feb 5 16:41:03 vserv kernel: Code: 8a 43 10 8b 34 85 e0 8b d2 fa 83 c4 10 85 f6 74 79 8b 06 83
>>EIP; fad24d76 <[fr1]do_fr1_request+66/130> <=====
>>ecx; f4fac000 <___strtok+34cacae0/3a51fb40>
>>edx; f5da9f7c <___strtok+35aaaa5c/3a51fb40>
>>esi; f4faded0 <___strtok+34cae9b0/3a51fb40>
>>edi; c02e8b2c <blk_dev+4ec/8b80>
>>ebp; f4fadeb8 <___strtok+34cae998/3a51fb40>
>>esp; f4fade90 <___strtok+34cae970/3a51fb40>
Trace; fad2799b <[fr1]__module_kernel_version+17/10bc>
Trace; c01a31ed <submit_bh+5d/80>
Trace; c01a21e6 <generic_unplug_device+36/40>
Trace; c011ad7d <__run_task_queue+4d/120>
Trace; c013a7a1 <block_sync_page+21/2d0>
Trace; c0127ba6 <___wait_on_page+b6/c0>
Trace; c012843e <do_generic_file_read+2fe/7b0>
Trace; c0128820 <do_generic_file_read+6e0/7b0>
Trace; c0128998 <generic_file_read+a8/750>
Trace; c0128820 <do_generic_file_read+6e0/7b0>
Trace; c01360b3 <default_llseek+2a3/cb0>
Trace; c0108eff <__up_wakeup+12bf/1690>
Code; fad24d76 <[fr1]do_fr1_request+66/130>
00000000 <_EIP>:
Code; fad24d76 <[fr1]do_fr1_request+66/130> <=====
0: 8a 43 10 mov 0x10(%ebx),%al <=====
Code; fad24d79 <[fr1]do_fr1_request+69/130>
3: 8b 34 85 e0 8b d2 fa mov 0xfad28be0(,%eax,4),%esi
Code; fad24d80 <[fr1]do_fr1_request+70/130>
a: 83 c4 10 add $0x10,%esp
Code; fad24d83 <[fr1]do_fr1_request+73/130>
d: 85 f6 test %esi,%esi
Code; fad24d85 <[fr1]do_fr1_request+75/130>
f: 74 79 je 8a <_EIP+0x8a> fad24e00 <[fr1]do_fr1_request+f0/130>
Code; fad24d87 <[fr1]do_fr1_request+77/130>
11: 8b 06 mov (%esi),%eax
Code; fad24d89 <[fr1]do_fr1_request+79/130>
13: 83 00 00 addl $0x0,(%eax)
Feb 5 16:39:52 vserv kernel: loop: loaded (max 8 devices)
Feb 5 16:40:15 vserv kernel: fr1 open device 9:0
Feb 5 16:40:15 vserv kernel: fr1 ioctl 800c0910
Feb 5 16:40:15 vserv kernel: fr1 open device 9:0
Feb 5 16:40:15 vserv kernel: fr1 ioctl 800c0910
Feb 5 16:40:20 vserv kernel: fr1 open device 9:0
Feb 5 16:40:20 vserv kernel: fr1 ioctl 40480923
Feb 5 16:40:20 vserv kernel: fr1 mkraid1 on device 0
Feb 5 16:40:20 vserv kernel: fr1 ioctl 40140921
Feb 5 16:40:20 vserv kernel: fr1 hotadd called to add for device 700
Feb 5 16:40:20 vserv kernel: fr1 create element 7:0 size 8384 blocks
Feb 5 16:40:20 vserv kernel: fr1 hotadd component 07:00[0] to device 0
Feb 5 16:40:20 vserv kernel: fr1 added new device 07:00 to f7ab5c00 with err 0
Feb 5 16:40:20 vserv kernel: fr1 ioctl 40140921
Feb 5 16:40:20 vserv kernel: fr1 hotadd called to add for device 701
Feb 5 16:40:20 vserv kernel: fr1 create element 7:1 size 8384 blocks
Feb 5 16:40:20 vserv kernel: fr1 hotadd component 07:01[1] to device 0
Feb 5 16:40:20 vserv kernel: fr1 added new device 07:01 to f7ab5c00 with err 0
Feb 5 16:40:20 vserv kernel: fr1 open device 9:0
Feb 5 16:40:20 vserv kernel: fr1 ioctl 400c0930
Feb 5 16:40:20 vserv kernel: fr1 calc component 7:0 size 8384 blocks
Feb 5 16:40:20 vserv kernel: fr1 calc component 7:1 size 8384 blocks
Feb 5 16:40:20 vserv kernel: fr1 calc size 8384 blocks
Feb 5 16:40:20 vserv kernel: fr1 close on device 9:0
Feb 5 16:40:21 vserv last message repeated 3 times
Feb 5 16:41:03 vserv kernel: fr1 open device 9:0
Feb 5 16:41:03 vserv kernel: got request 0
Feb 5 16:41:03 vserv kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000010
-Arve