[dvblast-devel] DVR_BUFFER_SIZE issue

Richard Hemzal hemzal at asm.cz
Wed Jan 25 09:42:00 CET 2012


Hi,

I have met issue that getting message from dvblast 

error: couldn't read from DVR device (Value too large for defined data type)

in some cases.
It looks that this message I am getting when szstem has some filesystem activity and it is probbaly related also with driver of
card, in my case TBS6280. I also cannot exclude that this can affect usage of traffic control rules. In fact problem happens not
each time, but in same system within few minutes will apear.

Solution, or workaround,  is to expand DVR_BUFFER_SIZE in dvb.c
originaly
#define DVR_BUFFER_SIZE 40*188*1024 /* bytes */ 
must change into 
#define DVR_BUFFER_SIZE 200*188*1024 /* bytes */

I can say that also value 100*188*1024 not enough. 

Should we do this value controllable from command line? 

It looks I am not first who met this issue, see 
http://panteltje.com/panteltje/dvd/
http://www.linuxtv.org/mailinglists/linux-dvb/2005/02-2005/msg00101.html
However this value not necessary to be changed in kernel, because can change from user space.
BTW In /linux/drivers/media/dvb/dvb-core/dmxdev.h  original is just predefined much smaller 10*188*1024


Can somebody tell how to calculate? Error happen in function readv() in DVRRead(). 
readv() man talking about sysconf(_SC_IOV_MAX) as point where can be size of buffer found but is this realy workable for dvb cards?


-------------- next part --------------
A non-text attachment was scrubbed...
Name: winmail.dat
Type: application/ms-tnef
Size: 5798 bytes
Desc: not available
URL: <http://mailman.videolan.org/pipermail/dvblast-devel/attachments/20120125/c0557eb1/attachment.bin>


More information about the dvblast-devel mailing list