Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: dvb-bt8xx and net device



Hi Holger,

net->addr_len was not initialized. Could you please try again and report if this helps? If not please add some debug messages using printk() in the network code below register_netdev() in order to see which variables are actually not correctly initialized.
Unfortunately it doesn't really help. I tried it three times and the first
time I thought everything would be fine because I could use dvbtune to setup the
network device. I could also set the IP and the mac address but when I tried tcpdump, the whole system simply hung. I couldn't do anything more. The second time, I could bring the net device up, but I got the typical seg fault when trying to set the ip address. The third time, I couldn't even bring the net device up with dvbtune (seg fault like always).

This strange behaviour seems to be related with some uninitialized variable so I will check that.

If you're interested, I have added the ksymoops for the both seg faults. I couldn't get any info when tcpdump crashed the system.

Seg fault after ifconfig dvb0_0 10.0.1.1

Warning (compare_ksyms_lsmod): module dvb-bt8xx is in lsmod but not in ksyms, probably no symbols exported
cpu: 0, clocks: 1993340, slice: 996670
ac97_codec: AC97 Audio codec, id: v9(SigmaTel STAC9721/23)
Unable to handle kernel paging request at virtual address ffeeeef4
ffeeeef4
*pde = 00003063
Oops: 0000
CPU: 0
EIP: 0010:[<ffeeeef4>] Tainted: P
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010282
eax: ffeeeef4 ebx: c02f32c0 ecx: c2f397a0 edx: 0000091e
esi: c02f3334 edi: c2f397ec ebp: c9166288 esp: c50adea8
ds: 0018 es: 0018 ss: 0018
Process ifconfig (pid: 557, stackpage=c50ad000)
Stack: c021cc14 c9166288 c2f397a0 c2f39940 c02f36fc c2f3997c c9166288 c2f397a0
c02478d0 c9166288 c02f32c0 00000000 c4ef7a20 c9166288 bffffb68 c2f39920
c0247f22 c9166288 0101000a 00000001 c50adf6c c02487e6 c9166288 c4ef7a20
Call Trace: [<c021cc14>] [<c02478d0>] [<c0247f22>] [<c02487e6>] [<c024ab47>]
[<c02122cf>] [<c0144967>] [<c0106f17>]
Code: Bad EIP value.


>>EIP; ffeeeef4 <END_OF_CODE+334bd094/????> <=====

>>ebx; c02f32c0 <arp_tbl+0/1b8>
>>ecx; c2f397a0 <_end+2bc7f1c/c4dc7dc>
>>esi; c02f3334 <arp_tbl+74/1b8>
>>edi; c2f397ec <_end+2bc7f68/c4dc7dc>
>>ebp; c9166288 <_end+8df4a04/c4dc7dc>
>>esp; c50adea8 <_end+4d3c624/c4dc7dc>

Trace; c021cc14 <neigh_parms_alloc+64/f4>
Trace; c02478d0 <inetdev_init+9c/178>
Trace; c0247f22 <inet_set_ifa+52/bc>
Trace; c02487e6 <devinet_ioctl+4fa/6d8>
Trace; c024ab47 <inet_ioctl+17b/1cc>
Trace; c02122cf <sock_ioctl+4b/70>
Trace; c0144967 <sys_ioctl+1bb/1f6>
Trace; c0106f17 <system_call+33/38>


2 warnings issued. Results may not be reliable.

#####
seg fault after dvbtune <..> -n 251


ksymoops 2.4.8 on i686 2.4.20. Options used
-V (default)
-k /proc/ksyms (default)
-l /proc/modules (default)
-o /lib/modules/2.4.20/ (default)
-m /boot/System.map-2.4.20 (default)

Warning: You did not tell me where to find symbol information. I will
assume that the log matches the kernel and modules that are running
right now and I'll use the default options above for symbol resolution.
If the current kernel and/or modules do not match the log, you can get
more accurate output by telling me the kernel version and where to find
map, modules, ksyms etc. ksymoops -h explains the options.

cpu: 0, clocks: 1993345, slice: 996672
ac97_codec: AC97 Audio codec, id: ??v9(SigmaTel STAC9721/23)
Unable to handle kernel paging request at virtual address 2d343369
c021ddac
*pde = 00000000
Oops: 0000
CPU: 0
EIP: 0010:[<c021ddac>] Tainted: P
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010212
eax: 0000000a ebx: 00000004 ecx: 00000001 edx: 00000008
esi: 2d343369 edi: c632005c ebp: 00000008 esp: c8939dd4
ds: 0018 es: 0018 ss: 0018
Process dvbtune (pid: 502, stackpage=c8939000)
Stack: c65f5da0 00000000 c02f1c2d c5db0288 c021e235 c65f5da0 0000000a 00000004
2d343369 c65f5da0 c5db0288 00000005 00000000 c02f1c28 00000206 c02f1c60
00000f14 c6320000 c6320000 00001000 c021e41a c65f5da0 c5db0288 00000010
Call Trace: [<c021e235>] [<c021e41a>] [<c021e892>] [<c0121e5a>] [<c0219ccd>]
[<c01b7bca>] [<cc85a1c2>] [<cc857611>] [<cc8576cc>] [<cc85319b>] [<c0140e08>]
[<c01370c6>] [<cc85965c>] [<c0137398>] [<c0135ff9>] [<c0135f0e>] [<cc85774b>]
[<cc857680>] [<c0144967>] [<c0106f17>]
Code: f3 a5 f6 c3 02 74 02 66 a5 f6 c3 01 74 01 a4 5b 5e 5f 5d c3


>>EIP; c021ddac <__rta_fill+70/84> <=====

>>edi; c632005c <_end+5fae7d8/c4dc7dc>
>>esp; c8939dd4 <_end+85c8550/c4dc7dc>

Trace; c021e235 <rtnetlink_fill_ifinfo+31d/3b8>
Trace; c021e41a <rtmsg_ifinfo+32/7c>
Trace; c021e892 <rtnetlink_event+32/38>
Trace; c0121e5a <notifier_call_chain+1e/38>
Trace; c0219ccd <register_netdevice+151/168>
Trace; c01b7bca <register_netdev+5e/70>
Trace; cc85a1c2 <[dvb-core]__kstrtab_dvb_ringbuffer_avail+d/1d>
Trace; cc857611 <[dvb-core]dvb_net_add_if+139/150>
Trace; cc8576cc <[dvb-core]dvb_net_do_ioctl+4c/ac>
Trace; cc85319b <[dvb-core]dvb_usercopy+b3/129>
Trace; c0140e08 <link_path_walk+888/99c>
Trace; c01370c6 <get_chrfops+5a/15c>
Trace; cc85965c <[dvb-core]dvb_device_open+68/dc>
Trace; c0137398 <chrdev_open+64/98>
Trace; c0135ff9 <dentry_open+e1/188>
Trace; c0135f0e <filp_open+52/5c>
Trace; cc85774b <[dvb-core]dvb_net_ioctl+1f/24>
Trace; cc857680 <[dvb-core]dvb_net_do_ioctl+0/ac>
Trace; c0144967 <sys_ioctl+1bb/1f6>
Trace; c0106f17 <system_call+33/38>

Code; c021ddac <__rta_fill+70/84>
00000000 <_EIP>:
Code; c021ddac <__rta_fill+70/84> <=====
0: f3 a5 repz movsl %ds:(%esi),%es:(%edi) <=====
Code; c021ddae <__rta_fill+72/84>
2: f6 c3 02 test $0x2,%bl
Code; c021ddb1 <__rta_fill+75/84>
5: 74 02 je 9 <_EIP+0x9>
Code; c021ddb3 <__rta_fill+77/84>
7: 66 a5 movsw %ds:(%esi),%es:(%edi)
Code; c021ddb5 <__rta_fill+79/84>
9: f6 c3 01 test $0x1,%bl
Code; c021ddb8 <__rta_fill+7c/84>
c: 74 01 je f <_EIP+0xf>
Code; c021ddba <__rta_fill+7e/84>
e: a4 movsb %ds:(%esi),%es:(%edi)
Code; c021ddbb <__rta_fill+7f/84>
f: 5b pop %ebx
Code; c021ddbc <__rta_fill+80/84>
10: 5e pop %esi
Code; c021ddbd <__rta_fill+81/84>
11: 5f pop %edi
Code; c021ddbe <__rta_fill+82/84>
12: 5d pop %ebp
Code; c021ddbf <__rta_fill+83/84>
13: c3 ret


1 warning issued. Results may not be reliable.

Thanks again for your help.
-André.

--
http://www.steinsoft.net
cout << "Happy Coding!" << endl;



--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index