Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: Announcement: new saa7146 driver core for the av7110 dvb driver
Michael,
As the original author of this driver, I was wondering if you have any ideas
on tracking down the kernel panic that sometimes occurs in this driver when
starting up from cold. Several people have reported similar problems. I have
a ksymoops output which points to the routine fidbirq being called before
the pointer to the grabbing areas has been setup (attached).
Regards
Pete Martin
ksymoops 2.4.5 on i686 2.4.19-16mdk-dvb-t. Options used
-V (default)
-k /proc/ksyms (specified)
-l /proc/modules (default)
-o /lib/modules/2.4.19-16mdk-dvb-t/ (default)
-m /boot/System.map-2.4.19-16mdk-dvb-t (default)
Oops: 0000
CPU: 0
EIP: 0010:[<c8905510>] Tainted: GF
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010202
eax: c8951c00 ebx: 00000001 ecx: 0095b635 edx: c8951c00
esi: c1c30000 edi: 5aa65fd0 ebp: c0297f2c esp: c0297f1c
ds: 0018 es: 0018 ss: 0018
Process swapper (pid: 0, stackpage=c0297000)
Stack: c1c30000 00000000 c02bc578 fffffff7 c0297f3c c0120164 c1c30000 00000001
c0297f58 c012000a c02bc578 00000046 c02baa60 0000000b c0297f78 c0297f70
c010a416 c32aa7c0 000255b7 c0296000 00000010 c0297fc4 c010c8c8 000255b7
Call Trace: [<c0120164>] [<c012000a>] [<c010a416>] [<c010c8c8>] [<c01071a4>]
[<c0114b35>] [<c0114a80>] [<c0107212>] [<c0105000>]
Code: 80 3f 47 74 08 8d 65 f4 5b 5e 5f 5d c3 51 8d 86 d0 0e 00 00
>>EIP; c8905510 <[msdos].data.end+1c01d/23b6d> <=====
>>eax; c8951c00 <[dvb-ttpci]Root+1f020/3e200>
>>ecx; 0095b635 Before first symbol
>>edx; c8951c00 <[dvb-ttpci]Root+1f020/3e200>
>>esi; c1c30000 <_end+1937428/8509488>
>>edi; 5aa65fd0 Before first symbol
>>ebp; c0297f2c <init_task_union+1f2c/2000>
>>esp; c0297f1c <init_task_union+1f1c/2000>
Trace; c0120164 <tasklet_action+44/70>
Trace; c012000a <do_softirq+aa/b0>
Trace; c010a416 <do_IRQ+b6/c0>
Trace; c010c8c8 <call_do_IRQ+5/d>
Trace; c01071a4 <default_idle+24/30>
Trace; c0114b35 <apm_cpu_idle+b5/150>
Trace; c0114a80 <apm_cpu_idle+0/150>
Trace; c0107212 <cpu_idle+42/60>
Trace; c0105000 <_stext+0/0>
Code; c8905510 <[msdos].data.end+1c01d/23b6d>
00000000 <_EIP>:
Code; c8905510 <[msdos].data.end+1c01d/23b6d> <=====
0: 80 3f 47 cmpb $0x47,(%edi) <=====
Code; c8905513 <[msdos].data.end+1c020/23b6d>
3: 74 08 je d <_EIP+0xd> c890551d <[msdos].data.end+1c02a/23b6d>
Code; c8905515 <[msdos].data.end+1c022/23b6d>
5: 8d 65 f4 lea 0xfffffff4(%ebp),%esp
Code; c8905518 <[msdos].data.end+1c025/23b6d>
8: 5b pop %ebx
Code; c8905519 <[msdos].data.end+1c026/23b6d>
9: 5e pop %esi
Code; c890551a <[msdos].data.end+1c027/23b6d>
a: 5f pop %edi
Code; c890551b <[msdos].data.end+1c028/23b6d>
b: 5d pop %ebp
Code; c890551c <[msdos].data.end+1c029/23b6d>
c: c3 ret
Code; c890551d <[msdos].data.end+1c02a/23b6d>
d: 51 push %ecx
Code; c890551e <[msdos].data.end+1c02b/23b6d>
e: 8d 86 d0 0e 00 00 lea 0xed0(%esi),%eax
Kernel panic: Aiee, killing interrupt handler!
--------------------------
Looks to me like this is at av7110.c->fidbirq near the end where it
is trying to read from mem[0] while comparing th econtents of mem9[0]
to 0x47.
Home |
Main Index |
Thread Index