Mailing List archive

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

[linux-dvb] Re: Segmentation fault in test_memory_input



Hi Michael,

 Thanks for your suggestion. Now we are able to solve the 
 segmentation fault error with dvb-dummy driver loaded.

 As you told the memory0 and demux0 devices are created in adapter1 through
 dvb-dummy driver. Also other devices expect memory0 are created in adapter0
 through av7110. It's as following:

 /dev/dvb/adapter0/audio0
 /dev/dvb/adapter0/video0
 /dev/dvb/adapter0/demux0
 /dev/dvb/adapter0/frontend0
 /dev/dvb/adapter0/video0 etc

 and 

 /dev/dvb/adapter1/video0
 /dev/dvb/adapter1/memory0
 
 When we ran test_meory_input, we are getting only the following log output
 and not the video/audio output in TV. 

 wrote 8084 bytes (163062364 total)
 wrote 8084 bytes (163070448 total)
 wrote 8084 bytes (163078532 total)
 wrote 8084 bytes (163086616 total)
 wrote 8084 bytes (163094700 total)
 wrote 8084 bytes (163102784 total)
 wrote 8084 bytes (163110868 total)
 wrote 8084 bytes (163118952 total)
 wrote 8084 bytes (163127036 total)
 wrote 8084 bytes (163135120 total)
 wrote 8084 bytes (163143204 total)...

 1) Whether A/V filtering will also be done using adapter1/demux0 and sent 
    to adapter0/video0 and adapter0/audio0?

 2) Here we tried to register the memory device through the av7110 driver,
    so that memory0 will be inside adapter0.

 The setup we have here in our PC,

 1) Fedora core release 2 with  Kernel 2.6.6
 2) DVB4.0 from CVS is installed. 
 3) Attached lsmod.txt and dmesg.txt for your reference.	

 Please suggest us to solve this problem.

Thanks and Regards,
Muthu.

-----Original Message-----
From: Michael Hunold [mailto:hunold@convergence.de]
Sent: Tuesday, July 27, 2004 7:50 PM
To: Muthu Kumaran R.
Cc: linux-dvb@linuxtv.org
Subject: Re: [linux-dvb] Segmentation fault in test_memory_input


Hello,

On 07/27/04 13:21, Muthu.Kumaran@soc-soft.com wrote:
> 1) I am trying to run the DVB 4.0 test application test_memory_input, but it's giving "segmentation fault"
>     error as given below. During debugging we came to know that it's happening while setting the source for
>     demux. All other test applications are running fine.
> 
> 	./test_memory_input  001.ts
> 	using '/dev/dvb/adapter0/memory0'
> 	using '/dev/dvb/adapter0/demux0'
> 	Segmentation fault

"test_memory_input" can only be used in conjunction with the "dvb-dummy" 
driver, which is the testbed for the software demux implementations (ie. 
software recording filters, software memory input, software filtering in 
general).

It works for me:
--------------------schnipp---------------------------------
using '/dev/dvb/adapter0/memory0'
using '/dev/dvb/adapter0/demux0'
reading from 'zdf.ts'
BUF_SIZE = 8192
THRESHOLD = 4096
device name:'sw memory input'
confirmed size: 8192
mmap_size: 16384
mmap_offset: 0
memory buffer mmap()ed to 0x40013000
wrote 8084 bytes (8084 total)
wrote 8084 bytes (16168 total)
wrote 8084 bytes (24252 total)
wrote 8084 bytes (32336 total)
wrote 8084 bytes (40420 total)
[...]
--------------------schnipp---------------------------------

But I admit that there are problems if you want to "record" from the 
"dvb-dummy" adapter with "test_recf" again, because "test_recf" always 
wants to set the demux input to the frontend again.

> 2)  When trying to playback the file recorded [using test_recf] with test_pes_play
>      application [recorded file is converted to have only pes data], it's giving "broken PES in input file",
>      although the starting of the file had VIDEO/AUDIO PES header.

Is the file playable with a movie player like "mplayer"?

The "broken PES in input file" error message is only printed if the 
start code (ie. 0x00 0x00 0x01) cannot be found. Are you sure it's 
really there?

> Thanks and Regards,
> Muthu.

CU
Michael. <<lsmod.txt>>  <<dmesg.txt>> 
Module                  Size  Used by
dvb_dummy              10624  0
dvb_ttpci              74648  1
ttpci_eeprom            3072  1 dvb_ttpci
saa7146_vv             48256  1 dvb_ttpci
saa7146                17828  2 dvb_ttpci,saa7146_vv
stv0299                14344  0
ves1x93                 9872  0
v4l1_compat            12164  1 saa7146_vv
dvb_core               55828  4 dvb_dummy,dvb_ttpci,stv0299,ves1x93
tuner                  16652  0
tda9887                 6660  0
msp3400                20756  0
bttv                  137868  0
video_buf              16260  2 saa7146_vv,bttv
v4l2_common             5376  2 saa7146_vv,bttv
btcx_risc               4232  1 bttv
videodev                7680  2 saa7146_vv,bttv
i2c_algo_bit            8456  1 bttv
i2c_core               18436  9 dvb_ttpci,ttpci_eeprom,stv0299,ves1x93,tuner,tda9887,msp3400,bttv,i2c_algo_bit
autofs4                11904  0
sunrpc                114504  1
tg3                    68612  0
dm_mod                 38048  0
uhci_hcd               27024  0
ehci_hcd               25092  0
button                  5144  0
battery                 7564  0
asus_acpi               9112  0
ac                      3724  0
ipv6                  208992  12
ext3                  102888  1
jbd                    46616  1 ext3
ata_piix                5764  0
libata                 33536  1 ata_piix,[permanent]
sd_mod                 18048  0
scsi_mod               99276  2 libata,sd_mod
saa7146: register extension 'dvb'.
saa7146: found saa7146 @ mem d023d000 (revision 1, irq 10) (0x13c2,0x0003).
dvb-core: registered adapter0 'Technotrend/Hauppauge PCI rev2.1'.
probe_tuner: try to attach to Technotrend/Hauppauge PCI rev2.1
/usr/local/src/dvb-kernel-v4/build-2.6/stv0299.c: setup for tuner BSRU6, TDQB-S00x
registering before/after ioctls for DVB-S frontend 'STV0299/TSA5059/SL1935 based'
DVB: registering frontend 'STV0299/TSA5059/SL1935 based' on adapter 'Technotrend/Hauppauge PCI rev2.1'
Technotrend/Hauppauge PCI rev2.1 adapter has MAC addr = 00:d0:5c:21:24:7b
gpioirq unknown type=0 len=0
DVB: AV7111(0) - firm f0240009, rtsl b0250018, vid 71010068, app 8000261c
DVB: AV7111(0) - firmware supports CI link layer interface
av7110(0): adac type set to 0
videodev: "av7110" has no release callback. Please fix your driver for proper sysfs support, see http://lwn.net/Articles/36850/
saa7146_vv: saa7146 (0): registered device video1 [v4l2]
av7110: found av7110-0.
dummy-dvb: dummy_init(): registering dummy dvb adapter 'dummy dvb-0'
dvb-core: registered adapter1 'dummy dvb-0'.
dummy-dvb: dummy_init(): registering memory input 0
DVB: registering memory frontend 1 ...
nopage: fault @ 40000000 [vma 40000000-40004000] page:0 mmaped() to virt addr d0310000
nopage: fault @ 40001000 [vma 40000000-40004000] page:1 mmaped() to virt addr d0311000
nopage: fault @ 40002000 [vma 40000000-40004000] page:2 mmaped() to virt addr d0310000
nopage: fault @ 40003000 [vma 40000000-40004000] page:3 mmaped() to virt addr d0311000
nopage: fault @ 40000000 [vma 40000000-40004000] page:0 mmaped() to virt addr d0310000
nopage: fault @ 40001000 [vma 40000000-40004000] page:1 mmaped() to virt addr d0311000
nopage: fault @ 40002000 [vma 40000000-40004000] page:2 mmaped() to virt addr d0310000
nopage: fault @ 40003000 [vma 40000000-40004000] page:3 mmaped() to virt addr d0311000
nopage: fault @ 40000000 [vma 40000000-40004000] page:0 mmaped() to virt addr d0310000
nopage: fault @ 40001000 [vma 40000000-40004000] page:1 mmaped() to virt addr d0311000
nopage: fault @ 40002000 [vma 40000000-40004000] page:2 mmaped() to virt addr d0310000
nopage: fault @ 40003000 [vma 40000000-40004000] page:3 mmaped() to virt addr d0311000

Home | Main Index | Thread Index