Mailing List archive

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

[linux-dvb] Re: IP multicast package loss with current CVS driver



Michael Dreher wrote:
Hi,

 > I'm loosing a lot of IP packets with this version. Any
 > suggestions how to fix this?

I still haven't found a solution for my problem or even a way how to track
it down.

I'm using a Debian Kernel 2.4.19, and a full featured DVB card with a Conax
CAM module.
vdr 1.1.25 is tuning to "Data only:12633:h:S19.2E:22000:0:0:0:0:0:0:0:1001",
that means
no filters are set for audio/video pids. A self written plugin (not
released, yet)
creates the DVB network interface and sets the network pid 1014.

The DVB driver from 2003-04-13 had no problems with lost ip packages. At
least all of the
errors were recoverable. But this version crashes after some days of
continous reception
and that's the reason why I have to update to a newer version. Even the
kernel
software-watchdog is unable to reboot the computer in this case.

The CVS version of the DVB from 2003-10-06 driver looses IP multicast
packets (UDP).
From a total of 4922 packages I'm loosing 368 packages. I tried both
firmwares
(Root and Root-icam) with the same result. This versions runs very stable
for me.

The application C-Terminal from Castify Networks can resolve 346 of the lost
packages with its own error correction algorithm, but that still means 22
unrecoverable lost packages.

The part from /var/log/messages, where the multicast filters are set:
Oct  6 22:53:13 atu-dev kernel: dvb0_0: set_mc_list, 2 entries
Oct  6 22:53:13 atu-dev kernel: dvb_net_feed_start: rx_mode 1
Oct  6 22:53:13 atu-dev kernel: dvb_net_feed_start: alloc secfeed
Oct  6 22:53:13 atu-dev kernel: dvb_net_feed_start: set secfilter
Oct  6 22:53:13 atu-dev kernel: dvb0_0: filter mac=00 d0 5c 02 cd 26
Oct  6 22:53:13 atu-dev kernel: dvb0_0: filter mask=ff ff ff ff ff ff
Oct  6 22:53:13 atu-dev kernel: dvb_net_feed_start: set multi_secfilter[0]
Oct  6 22:53:13 atu-dev kernel: dvb0_0: filter mac=01 00 5e 02 02 0a
Oct  6 22:53:13 atu-dev kernel: dvb0_0: filter mask=ff ff ff ff ff ff
Oct  6 22:53:13 atu-dev kernel: dvb_net_feed_start: set multi_secfilter[1]
Oct  6 22:53:13 atu-dev kernel: dvb0_0: filter mac=01 00 5e 00 00 01
Oct  6 22:53:13 atu-dev kernel: dvb0_0: filter mask=ff ff ff ff ff ff
Oct  6 22:53:13 atu-dev kernel: dvb_net_feed_start: start filtering


Please can anybody give me some hints how to resolve the problem.
Which additional informations is needed? Does anybody have a
similar setup (full featured DVB card with IP data reception),
that works?
Can you please check in the demux or within the DMA irq callback that the continuity counter is continuous for every received PID? The relevant code still exists in the software demux code, simply remove the comment marks. If the CC is not continous this might be caused by lost interrupts, wrong PCI latency configuration or a timing problem.

You might also want to check for ringbuffer overflows, here you might loose data too.

The old driver version works, but crashes very often, therefore I
think it must be possible to get this setup running.
sure. Can you please try to dig this down and report anything you find?

Have there been any general changes in the driver, that can lead
to ip packet loss (performance/timing issues or throwing away
TS packages because of bad checksums) or is this only related
to the network part of the driver?
Basically there have been some changes (mainly by Jon Burgess) which should solve exactly the problems you have now. Can you please check the CVS changelogs and try to find out which change exactly caused your problem? 'cvsps' is a nice tool for doing tasks like this, you can use it both to review the changelogs and also to generate the matching diffs you can thenafter reverse-apply.

Holger



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



Home | Main Index | Thread Index