Ingo Schneider wrote: > I hava a problem that I loose TS packets due to overruns of the SAA 7146 > DMA buffer when the system is under I/O load (e.g. backup). > > I modified the budget-core.c to give warning when the buffer is nearly > full to verify that this is really the cause (see code below). > The simplest thing would be to increase the buffer size. The current > size = 1024 TS packets, about 192k. > > I would tend to increase this buffer to about 1 or 2 megabytes to stop > getting those TS continuity errors, > is there a reason why this buffer was chosen to be so small ? Spec of > SAA7146 says it can handle 4 megabytes for DMA. I guess this size was chosen because dma buffer size is usually large enough. Afaik you are the first one who needs a larger buffer... Since the driver is widely used on systems with limited memory I vote against increasing the default value. But if you deliver a clean patch which adds a module parameter for that, I will commit it to the hg repository (something like DMA_BUF_SIZE in KByte). > Also, there is a special handling for BUDGET_FS_ACTIVY which has a > different buffer "layout" - why is this ? The buffer size is the same, only the DMA ist configured in a slightly different way. That must be done to strip the ECC bytes from the data stream: 188 bytes data + 16 bytes ECC = 204 bytes total. Other budget cards have a different hardware design and do not require this. Oliver -- -------------------------------------------------------- VDR Remote Plugin available at http://www.escape-edv.de/endriss/vdr/ -------------------------------------------------------- _______________________________________________ linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb