linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* bug: dvbv5-scan segfaults
@ 2019-08-26 16:59 Olcay Korkmaz
  2019-08-26 17:40 ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 6+ messages in thread
From: Olcay Korkmaz @ 2019-08-26 16:59 UTC (permalink / raw)
  To: linux-media

Hello,
dvbv5-scan segfaults when scanning transponders at Turksat-42.0E
(three of transponders are causing the error)

LANG=en_US.UTF-8 gdb -ex=r --args dvbv5-scan -l UNIVERSAL -S0 -v -o
Turksat.conf ./Turksat-42.0E
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Using LNBf UNIVERSAL
 Universal, Europe
 Freqs : 10800 to 11800 MHz, LO: 9750 MHz
 Freqs : 11600 to 12700 MHz, LO: 10600 MHz
using demux 'dvb0.demux0'
Device Montage Technology DS3000/TS2020 (/dev/dvb/adapter0/frontend0)
capabilities:
     CAN_2G_MODULATION
     CAN_FEC_1_2
     CAN_FEC_2_3
     CAN_FEC_3_4
     CAN_FEC_4_5
     CAN_FEC_5_6
     CAN_FEC_6_7
     CAN_FEC_7_8
     CAN_FEC_AUTO
     CAN_INVERSION_AUTO
     CAN_QPSK
     CAN_RECOVER
DVB API Version 5.11, Current v5 delivery system: DVBS
Supported delivery systems:
    [DVBS]
     DVBS2
Failed to guess country from the current locale setting.

ERROR command BANDWIDTH_HZ (5) not found during retrieve
Cannot calc frequency shift. Either bandwidth/symbol-rate is unavailable (yet).
Scanning frequency #1 12346000
frequency: 12346,00 MHz, high_band: 1
SEC: set voltage to 18V
DiSEqC TONE: OFF
DiSEqC command: e0 10 38 f3
DiSEqC BURST: SEC_MINI_A
DiSEqC TONE: ON
L-Band frequency: 1746,00 MHz (offset = 10600,00 MHz)
FREQUENCY = 12346000
INVERSION = AUTO
SYMBOL_RATE = 9600000
INNER_FEC = 3/4
POLARIZATION = HORIZONTAL
DELIVERY_SYSTEM = DVBS
Got parameters for DVBS:
FREQUENCY = 12346000
INVERSION = AUTO
SYMBOL_RATE = 9600000
INNER_FEC = 3/4
POLARIZATION = HORIZONTAL
DELIVERY_SYSTEM = DVBS
Lock (0x1f) Signal= 37,86% C/N= 47,97% UCB= 31440 postBER= 0
dvb_read_sections: waiting for table ID 0x00, program ID 0x00
dvb_parse_section: received table 0x00, extension ID 0xa414, section 0/0
dvb_parse_section: table 0x00, extension ID 0xa414: done
PAT
| table_id 0x00
| section_length 25
| one 3
| zero 0
| syntax 1
| transport_stream_id 42004
| current_next 1
| version 14
| one2 3
| section_number 0
| last_section_number 0
|\ 4 program pids
| pid 0x0010: service 0x0000
| pid 0x0065: service 0x3264
| pid 0x012d: service 0x3265
| pid 0x0066: service 0x3269
Program #0 is network PID: 0x0010
Program #1 ID 0x0065, service ID 0x3264
dvb_read_sections: waiting for table ID 0x02, program ID 0x65
dvb_parse_section: received table 0x02, extension ID 0x3264, section 0/0
dvb_parse_section: table 0x02, extension ID 0x3264: done
PMT
| table_id 0x02
| section_length 112
| one 3
| zero 0
| syntax 1
| transport_stream_id 12900
| current_next 1
| version 7
| one2 3
| section_number 0
| last_section_number 0
|- pcr_pid 0b54
| reserved2 7
| descriptor length 11
| zero3 0
| reserved3 15
| 0x0c: multiplex_buffer_utilization_descriptor
| 80 b4 81 68 ...h
| 0x0e: maximum_bitrate_descriptor
| c0 3e a4 .>.
|\
|- stream 0x0b54: Video ISO/IEC 13818-2 (2)
| descriptor length 16
| 0x52: stream_identifier_descriptor
| 01 .
| 0x02: video_stream_descriptor
| 1a 48 5f .H_
| 0x06: ds_alignment_descriptor
| 02 .
| 0x0e: maximum_bitrate_descriptor
| c0 39 4e .9N
|- stream 0x0bb8: Audio ISO/IEC 13818-3 (4)
| descriptor length 17
| 0x52: stream_identifier_descriptor
| 02 .
| 0x0a: iso639_language_descriptor
| lang: tur (type: 0)
| 0x03: audio_stream_descriptor
| 67 g
| 0x0e: maximum_bitrate_descriptor
| c0 02 90 ...
|- stream 0x0c1c: Audio ISO/IEC 13818-3 (4)
| descriptor length 17
| 0x52: stream_identifier_descriptor
| 03 .
| 0x0a: iso639_language_descriptor
| lang: eng (type: 0)
| 0x03: audio_stream_descriptor
| 67 g
| 0x0e: maximum_bitrate_descriptor
| c0 01 49 ..I
|- stream 0x1779: ISO/IEC 13818-1 Private Sections (5)
| descriptor length 5
| 0x6f: application_signalling_descriptor
| 00 10 e0 ...
|- stream 0x1f48: ISO/IEC 13818-6 type C (c)
| descriptor length 8
| 0x52: stream_identifier_descriptor
| 2e .
| 0x0e: maximum_bitrate_descriptor
| c0 00 4b ..K
|_ 5 streams
Program #2 ID 0x012d, service ID 0x3265
dvb_read_sections: waiting for table ID 0x02, program ID 0x12d
dvb_parse_section: received table 0x02, extension ID 0x3265, section 0/0
dvb_parse_section: table 0x02, extension ID 0x3265: done
PMT
| table_id 0x02
| section_length 85
| one 3
| zero 0
| syntax 1
| transport_stream_id 12901
| current_next 1
| version 14
| one2 3
| section_number 0
| last_section_number 0
|- pcr_pid 0b55
| reserved2 7
| descriptor length 11
| zero3 0
| reserved3 15
| 0x0c: multiplex_buffer_utilization_descriptor
| 80 b4 81 68 ...h
| 0x0e: maximum_bitrate_descriptor
| c0 35 b9 .5.
|\
|- stream 0x0b55: Video ISO/IEC 13818-2 (2)
| descriptor length 16
| 0x52: stream_identifier_descriptor
| 01 .
| 0x02: video_stream_descriptor
| 1a 48 5f .H_
| 0x06: ds_alignment_descriptor
| 02 .
| 0x0e: maximum_bitrate_descriptor
| c0 32 52 .2R
|- stream 0x0bb9: Audio ISO/IEC 13818-3 (4)
| descriptor length 17
| 0x52: stream_identifier_descriptor
| 02 .
| 0x0a: iso639_language_descriptor
| lang: tur (type: 0)
| 0x03: audio_stream_descriptor
| 67 g
| 0x0e: maximum_bitrate_descriptor
| c0 02 03 ...
|- stream 0x1773: ISO/IEC 13818-1 Private Sections (5)
| descriptor length 13
| 0x0e: maximum_bitrate_descriptor
| c0 02 ee ...
| 0x6f: application_signalling_descriptor
| 00 10 e0 ...
| 0x52: stream_identifier_descriptor
| 04 .
|_ 3 streams
Program #3 ID 0x0066, service ID 0x3269
dvb_read_sections: waiting for table ID 0x02, program ID 0x66
dvb_parse_section: received table 0x02, extension ID 0x3269, section 0/0
dvb_parse_section: table 0x02, extension ID 0x3269: done
PMT
| table_id 0x02
| section_length 55
| one 3
| zero 0
| syntax 1
| transport_stream_id 12905
| current_next 1
| version 0
| one2 3
| section_number 0
| last_section_number 0
|- pcr_pid 0bbd
| reserved2 7
| descriptor length 23
| zero3 0
| reserved3 15
| 0x0e: maximum_bitrate_descriptor
| c0 01 41 ..A
| 0x09: conditional_access_descriptor
| ca_id 0x2600
| ca_pid 0x1fff
| privdata length 0
| 0x10: smoothing_buffer_descriptor
| c0 02 71 c0 04 00 ..q...
| 0x0b: system_clock_descriptor
| 42 3f B?
|\
|- stream 0x0bbd: Audio ISO/IEC 11172 (3)
| descriptor length 14
| 0x52: stream_identifier_descriptor
| 02 .
| 0x0e: maximum_bitrate_descriptor
| c0 01 40 ..@
| 0x0a: iso639_language_descriptor
| lang: und (type: 0)
|_ 1 streams
dvb_read_sections: waiting for table ID 0x40, program ID 0x10
ERROR dvb_read_sections: no data read on section filter
ERROR error while reading the NIT table
dvb_read_sections: waiting for table ID 0x42, program ID 0x11
dvb_parse_section: received table 0x42, extension ID 0xa414, section 0/0
dvb_parse_section: table 0x42, extension ID 0xa414: done
SDT
| table_id 0x42
| section_length 67
| one 3
| zero 1
| syntax 1
| transport_stream_id 42004
| current_next 1
| version 4
| one2 3
| section_number 0
| last_section_number 0
| network_id 1070
| reserved 255
|\
|- service 0x3264
| EIT schedule 0
| EIT present following 0
| free CA mode 0
| running status 4
| descriptor length 11
| 0x48: service_descriptor
| service type 1
| provider 'TV8'
| name 'TV8'
|- service 0x3265
| EIT schedule 0
| EIT present following 0
| free CA mode 0
| running status 4
| descriptor length 15
| 0x48: service_descriptor
| service type 1
| provider 'TV8 5'
| name 'TV8 5'
|- service 0x3269
| EIT schedule 0
| EIT present following 0
| free CA mode 1
| running status 4
| descriptor length 14
| 0x48: service_descriptor
| service type 2
| provider 'TV8'
| name 'TV8Ifb'
|_ 3 services
Service TV8, provider TV8: digital television
Storing as channel TV8

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7ba5cff in dvb_store_channel ()
   from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
(gdb) backtrace
#0 0x00007ffff7ba5cff in dvb_store_channel ()
   from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
#1 0x00005555555560c6 in run_scan (dvb=0x55555575d2e0, args=0x7fffffffdc80)
    at dvbv5-scan.c:313
#2 main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562

-- 
Olcay K.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: bug: dvbv5-scan segfaults
  2019-08-26 16:59 bug: dvbv5-scan segfaults Olcay Korkmaz
@ 2019-08-26 17:40 ` Mauro Carvalho Chehab
  2019-08-26 19:25   ` Olcay Korkmaz
  0 siblings, 1 reply; 6+ messages in thread
From: Mauro Carvalho Chehab @ 2019-08-26 17:40 UTC (permalink / raw)
  To: Olcay Korkmaz; +Cc: linux-media

Hi Olcay,

Em Mon, 26 Aug 2019 19:59:17 +0300
Olcay Korkmaz <olcay.mz@gmail.com> escreveu:

> Hello,
> dvbv5-scan segfaults when scanning transponders at Turksat-42.0E
> (three of transponders are causing the error)

Are you using the latest version of dvbv5-scan from the git tree?

> 
> LANG=en_US.UTF-8 gdb -ex=r --args dvbv5-scan -l UNIVERSAL -S0 -v -o
> Turksat.conf ./Turksat-42.0E
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> Using LNBf UNIVERSAL
>  Universal, Europe
>  Freqs : 10800 to 11800 MHz, LO: 9750 MHz
>  Freqs : 11600 to 12700 MHz, LO: 10600 MHz
> using demux 'dvb0.demux0'
> Device Montage Technology DS3000/TS2020 (/dev/dvb/adapter0/frontend0)
> capabilities:
>      CAN_2G_MODULATION
>      CAN_FEC_1_2
>      CAN_FEC_2_3
>      CAN_FEC_3_4
>      CAN_FEC_4_5
>      CAN_FEC_5_6
>      CAN_FEC_6_7
>      CAN_FEC_7_8
>      CAN_FEC_AUTO
>      CAN_INVERSION_AUTO
>      CAN_QPSK
>      CAN_RECOVER
> DVB API Version 5.11, Current v5 delivery system: DVBS
> Supported delivery systems:
>     [DVBS]
>      DVBS2
> Failed to guess country from the current locale setting.
> 
> ERROR command BANDWIDTH_HZ (5) not found during retrieve
> Cannot calc frequency shift. Either bandwidth/symbol-rate is unavailable (yet).
> Scanning frequency #1 12346000
> frequency: 12346,00 MHz, high_band: 1
> SEC: set voltage to 18V
> DiSEqC TONE: OFF
> DiSEqC command: e0 10 38 f3
> DiSEqC BURST: SEC_MINI_A
> DiSEqC TONE: ON
> L-Band frequency: 1746,00 MHz (offset = 10600,00 MHz)
> FREQUENCY = 12346000
> INVERSION = AUTO
> SYMBOL_RATE = 9600000
> INNER_FEC = 3/4
> POLARIZATION = HORIZONTAL
> DELIVERY_SYSTEM = DVBS
> Got parameters for DVBS:
> FREQUENCY = 12346000
> INVERSION = AUTO
> SYMBOL_RATE = 9600000
> INNER_FEC = 3/4
> POLARIZATION = HORIZONTAL
> DELIVERY_SYSTEM = DVBS
> Lock (0x1f) Signal= 37,86% C/N= 47,97% UCB= 31440 postBER= 0
> dvb_read_sections: waiting for table ID 0x00, program ID 0x00
> dvb_parse_section: received table 0x00, extension ID 0xa414, section 0/0
> dvb_parse_section: table 0x00, extension ID 0xa414: done
> PAT
> | table_id 0x00
> | section_length 25
> | one 3
> | zero 0
> | syntax 1
> | transport_stream_id 42004
> | current_next 1
> | version 14
> | one2 3
> | section_number 0
> | last_section_number 0
> |\ 4 program pids
> | pid 0x0010: service 0x0000
> | pid 0x0065: service 0x3264
> | pid 0x012d: service 0x3265
> | pid 0x0066: service 0x3269
> Program #0 is network PID: 0x0010
> Program #1 ID 0x0065, service ID 0x3264
> dvb_read_sections: waiting for table ID 0x02, program ID 0x65
> dvb_parse_section: received table 0x02, extension ID 0x3264, section 0/0
> dvb_parse_section: table 0x02, extension ID 0x3264: done
> PMT
> | table_id 0x02
> | section_length 112
> | one 3
> | zero 0
> | syntax 1
> | transport_stream_id 12900
> | current_next 1
> | version 7
> | one2 3
> | section_number 0
> | last_section_number 0
> |- pcr_pid 0b54
> | reserved2 7
> | descriptor length 11
> | zero3 0
> | reserved3 15
> | 0x0c: multiplex_buffer_utilization_descriptor
> | 80 b4 81 68 ...h
> | 0x0e: maximum_bitrate_descriptor
> | c0 3e a4 .>.
> |\
> |- stream 0x0b54: Video ISO/IEC 13818-2 (2)
> | descriptor length 16
> | 0x52: stream_identifier_descriptor
> | 01 .
> | 0x02: video_stream_descriptor
> | 1a 48 5f .H_
> | 0x06: ds_alignment_descriptor
> | 02 .
> | 0x0e: maximum_bitrate_descriptor
> | c0 39 4e .9N
> |- stream 0x0bb8: Audio ISO/IEC 13818-3 (4)
> | descriptor length 17
> | 0x52: stream_identifier_descriptor
> | 02 .
> | 0x0a: iso639_language_descriptor
> | lang: tur (type: 0)
> | 0x03: audio_stream_descriptor
> | 67 g
> | 0x0e: maximum_bitrate_descriptor
> | c0 02 90 ...
> |- stream 0x0c1c: Audio ISO/IEC 13818-3 (4)
> | descriptor length 17
> | 0x52: stream_identifier_descriptor
> | 03 .
> | 0x0a: iso639_language_descriptor
> | lang: eng (type: 0)
> | 0x03: audio_stream_descriptor
> | 67 g
> | 0x0e: maximum_bitrate_descriptor
> | c0 01 49 ..I
> |- stream 0x1779: ISO/IEC 13818-1 Private Sections (5)
> | descriptor length 5
> | 0x6f: application_signalling_descriptor
> | 00 10 e0 ...
> |- stream 0x1f48: ISO/IEC 13818-6 type C (c)
> | descriptor length 8
> | 0x52: stream_identifier_descriptor
> | 2e .
> | 0x0e: maximum_bitrate_descriptor
> | c0 00 4b ..K
> |_ 5 streams
> Program #2 ID 0x012d, service ID 0x3265
> dvb_read_sections: waiting for table ID 0x02, program ID 0x12d
> dvb_parse_section: received table 0x02, extension ID 0x3265, section 0/0
> dvb_parse_section: table 0x02, extension ID 0x3265: done
> PMT
> | table_id 0x02
> | section_length 85
> | one 3
> | zero 0
> | syntax 1
> | transport_stream_id 12901
> | current_next 1
> | version 14
> | one2 3
> | section_number 0
> | last_section_number 0
> |- pcr_pid 0b55
> | reserved2 7
> | descriptor length 11
> | zero3 0
> | reserved3 15
> | 0x0c: multiplex_buffer_utilization_descriptor
> | 80 b4 81 68 ...h
> | 0x0e: maximum_bitrate_descriptor
> | c0 35 b9 .5.
> |\
> |- stream 0x0b55: Video ISO/IEC 13818-2 (2)
> | descriptor length 16
> | 0x52: stream_identifier_descriptor
> | 01 .
> | 0x02: video_stream_descriptor
> | 1a 48 5f .H_
> | 0x06: ds_alignment_descriptor
> | 02 .
> | 0x0e: maximum_bitrate_descriptor
> | c0 32 52 .2R
> |- stream 0x0bb9: Audio ISO/IEC 13818-3 (4)
> | descriptor length 17
> | 0x52: stream_identifier_descriptor
> | 02 .
> | 0x0a: iso639_language_descriptor
> | lang: tur (type: 0)
> | 0x03: audio_stream_descriptor
> | 67 g
> | 0x0e: maximum_bitrate_descriptor
> | c0 02 03 ...
> |- stream 0x1773: ISO/IEC 13818-1 Private Sections (5)
> | descriptor length 13
> | 0x0e: maximum_bitrate_descriptor
> | c0 02 ee ...
> | 0x6f: application_signalling_descriptor
> | 00 10 e0 ...
> | 0x52: stream_identifier_descriptor
> | 04 .
> |_ 3 streams
> Program #3 ID 0x0066, service ID 0x3269
> dvb_read_sections: waiting for table ID 0x02, program ID 0x66
> dvb_parse_section: received table 0x02, extension ID 0x3269, section 0/0
> dvb_parse_section: table 0x02, extension ID 0x3269: done
> PMT
> | table_id 0x02
> | section_length 55
> | one 3
> | zero 0
> | syntax 1
> | transport_stream_id 12905
> | current_next 1
> | version 0
> | one2 3
> | section_number 0
> | last_section_number 0
> |- pcr_pid 0bbd
> | reserved2 7
> | descriptor length 23
> | zero3 0
> | reserved3 15
> | 0x0e: maximum_bitrate_descriptor
> | c0 01 41 ..A
> | 0x09: conditional_access_descriptor
> | ca_id 0x2600
> | ca_pid 0x1fff
> | privdata length 0
> | 0x10: smoothing_buffer_descriptor
> | c0 02 71 c0 04 00 ..q...
> | 0x0b: system_clock_descriptor
> | 42 3f B?
> |\
> |- stream 0x0bbd: Audio ISO/IEC 11172 (3)
> | descriptor length 14
> | 0x52: stream_identifier_descriptor
> | 02 .
> | 0x0e: maximum_bitrate_descriptor
> | c0 01 40 ..@
> | 0x0a: iso639_language_descriptor
> | lang: und (type: 0)
> |_ 1 streams
> dvb_read_sections: waiting for table ID 0x40, program ID 0x10
> ERROR dvb_read_sections: no data read on section filter
> ERROR error while reading the NIT table
> dvb_read_sections: waiting for table ID 0x42, program ID 0x11
> dvb_parse_section: received table 0x42, extension ID 0xa414, section 0/0
> dvb_parse_section: table 0x42, extension ID 0xa414: done
> SDT
> | table_id 0x42
> | section_length 67
> | one 3
> | zero 1
> | syntax 1
> | transport_stream_id 42004
> | current_next 1
> | version 4
> | one2 3
> | section_number 0
> | last_section_number 0
> | network_id 1070
> | reserved 255
> |\
> |- service 0x3264
> | EIT schedule 0
> | EIT present following 0
> | free CA mode 0
> | running status 4
> | descriptor length 11
> | 0x48: service_descriptor
> | service type 1
> | provider 'TV8'
> | name 'TV8'
> |- service 0x3265
> | EIT schedule 0
> | EIT present following 0
> | free CA mode 0
> | running status 4
> | descriptor length 15
> | 0x48: service_descriptor
> | service type 1
> | provider 'TV8 5'
> | name 'TV8 5'
> |- service 0x3269
> | EIT schedule 0
> | EIT present following 0
> | free CA mode 1
> | running status 4
> | descriptor length 14
> | 0x48: service_descriptor
> | service type 2
> | provider 'TV8'
> | name 'TV8Ifb'
> |_ 3 services
> Service TV8, provider TV8: digital television
> Storing as channel TV8
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff7ba5cff in dvb_store_channel ()
>    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> (gdb) backtrace


> #0 0x00007ffff7ba5cff in dvb_store_channel ()
>    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> #1 0x00005555555560c6 in run_scan (dvb=0x55555575d2e0, args=0x7fffffffdc80)
>     at dvbv5-scan.c:313
> #2 main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562
> 

Just this isn't enough to identify where the error happened. This is
just a call to the libdvbv5, where the dvb_store_channel() function is
implemented.

We can't even reproduce it here, as we would need to have the same
TV signal you're using.

I could try to simulate it here, but I would need you to zap into the
transponder and record ~60 seconds (using dvbv5-zap -P), for me to be
able to use my RF generator and try to simulate the error.

The file will be big, so you'll need to temporarely store it at Google
Drive or some other similar service and pass me a link for downloading
it.

Thanks,
Mauro

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: bug: dvbv5-scan segfaults
  2019-08-26 17:40 ` Mauro Carvalho Chehab
@ 2019-08-26 19:25   ` Olcay Korkmaz
  2019-08-27 13:09     ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 6+ messages in thread
From: Olcay Korkmaz @ 2019-08-26 19:25 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: linux-media

1.14.2 and git tree build gives the same error
TS of entire transponder:
https://drive.google.com/file/d/1zHouZSlbPowyJY5tzT5ro0r4ciPURkbi/view?usp=sharing

Mauro Carvalho Chehab <mchehab+samsung@kernel.org>, 26 Ağu 2019 Pzt,
20:40 tarihinde şunu yazdı:
>
> Hi Olcay,
>
> Em Mon, 26 Aug 2019 19:59:17 +0300
> Olcay Korkmaz <olcay.mz@gmail.com> escreveu:
>
> > Hello,
> > dvbv5-scan segfaults when scanning transponders at Turksat-42.0E
> > (three of transponders are causing the error)
>
> Are you using the latest version of dvbv5-scan from the git tree?
>
> >
> > LANG=en_US.UTF-8 gdb -ex=r --args dvbv5-scan -l UNIVERSAL -S0 -v -o
> > Turksat.conf ./Turksat-42.0E
> > [Thread debugging using libthread_db enabled]
> > Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> > Using LNBf UNIVERSAL
> >  Universal, Europe
> >  Freqs : 10800 to 11800 MHz, LO: 9750 MHz
> >  Freqs : 11600 to 12700 MHz, LO: 10600 MHz
> > using demux 'dvb0.demux0'
> > Device Montage Technology DS3000/TS2020 (/dev/dvb/adapter0/frontend0)
> > capabilities:
> >      CAN_2G_MODULATION
> >      CAN_FEC_1_2
> >      CAN_FEC_2_3
> >      CAN_FEC_3_4
> >      CAN_FEC_4_5
> >      CAN_FEC_5_6
> >      CAN_FEC_6_7
> >      CAN_FEC_7_8
> >      CAN_FEC_AUTO
> >      CAN_INVERSION_AUTO
> >      CAN_QPSK
> >      CAN_RECOVER
> > DVB API Version 5.11, Current v5 delivery system: DVBS
> > Supported delivery systems:
> >     [DVBS]
> >      DVBS2
> > Failed to guess country from the current locale setting.
> >
> > ERROR command BANDWIDTH_HZ (5) not found during retrieve
> > Cannot calc frequency shift. Either bandwidth/symbol-rate is unavailable (yet).
> > Scanning frequency #1 12346000
> > frequency: 12346,00 MHz, high_band: 1
> > SEC: set voltage to 18V
> > DiSEqC TONE: OFF
> > DiSEqC command: e0 10 38 f3
> > DiSEqC BURST: SEC_MINI_A
> > DiSEqC TONE: ON
> > L-Band frequency: 1746,00 MHz (offset = 10600,00 MHz)
> > FREQUENCY = 12346000
> > INVERSION = AUTO
> > SYMBOL_RATE = 9600000
> > INNER_FEC = 3/4
> > POLARIZATION = HORIZONTAL
> > DELIVERY_SYSTEM = DVBS
> > Got parameters for DVBS:
> > FREQUENCY = 12346000
> > INVERSION = AUTO
> > SYMBOL_RATE = 9600000
> > INNER_FEC = 3/4
> > POLARIZATION = HORIZONTAL
> > DELIVERY_SYSTEM = DVBS
> > Lock (0x1f) Signal= 37,86% C/N= 47,97% UCB= 31440 postBER= 0
> > dvb_read_sections: waiting for table ID 0x00, program ID 0x00
> > dvb_parse_section: received table 0x00, extension ID 0xa414, section 0/0
> > dvb_parse_section: table 0x00, extension ID 0xa414: done
> > PAT
> > | table_id 0x00
> > | section_length 25
> > | one 3
> > | zero 0
> > | syntax 1
> > | transport_stream_id 42004
> > | current_next 1
> > | version 14
> > | one2 3
> > | section_number 0
> > | last_section_number 0
> > |\ 4 program pids
> > | pid 0x0010: service 0x0000
> > | pid 0x0065: service 0x3264
> > | pid 0x012d: service 0x3265
> > | pid 0x0066: service 0x3269
> > Program #0 is network PID: 0x0010
> > Program #1 ID 0x0065, service ID 0x3264
> > dvb_read_sections: waiting for table ID 0x02, program ID 0x65
> > dvb_parse_section: received table 0x02, extension ID 0x3264, section 0/0
> > dvb_parse_section: table 0x02, extension ID 0x3264: done
> > PMT
> > | table_id 0x02
> > | section_length 112
> > | one 3
> > | zero 0
> > | syntax 1
> > | transport_stream_id 12900
> > | current_next 1
> > | version 7
> > | one2 3
> > | section_number 0
> > | last_section_number 0
> > |- pcr_pid 0b54
> > | reserved2 7
> > | descriptor length 11
> > | zero3 0
> > | reserved3 15
> > | 0x0c: multiplex_buffer_utilization_descriptor
> > | 80 b4 81 68 ...h
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 3e a4 .>.
> > |\
> > |- stream 0x0b54: Video ISO/IEC 13818-2 (2)
> > | descriptor length 16
> > | 0x52: stream_identifier_descriptor
> > | 01 .
> > | 0x02: video_stream_descriptor
> > | 1a 48 5f .H_
> > | 0x06: ds_alignment_descriptor
> > | 02 .
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 39 4e .9N
> > |- stream 0x0bb8: Audio ISO/IEC 13818-3 (4)
> > | descriptor length 17
> > | 0x52: stream_identifier_descriptor
> > | 02 .
> > | 0x0a: iso639_language_descriptor
> > | lang: tur (type: 0)
> > | 0x03: audio_stream_descriptor
> > | 67 g
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 02 90 ...
> > |- stream 0x0c1c: Audio ISO/IEC 13818-3 (4)
> > | descriptor length 17
> > | 0x52: stream_identifier_descriptor
> > | 03 .
> > | 0x0a: iso639_language_descriptor
> > | lang: eng (type: 0)
> > | 0x03: audio_stream_descriptor
> > | 67 g
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 01 49 ..I
> > |- stream 0x1779: ISO/IEC 13818-1 Private Sections (5)
> > | descriptor length 5
> > | 0x6f: application_signalling_descriptor
> > | 00 10 e0 ...
> > |- stream 0x1f48: ISO/IEC 13818-6 type C (c)
> > | descriptor length 8
> > | 0x52: stream_identifier_descriptor
> > | 2e .
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 00 4b ..K
> > |_ 5 streams
> > Program #2 ID 0x012d, service ID 0x3265
> > dvb_read_sections: waiting for table ID 0x02, program ID 0x12d
> > dvb_parse_section: received table 0x02, extension ID 0x3265, section 0/0
> > dvb_parse_section: table 0x02, extension ID 0x3265: done
> > PMT
> > | table_id 0x02
> > | section_length 85
> > | one 3
> > | zero 0
> > | syntax 1
> > | transport_stream_id 12901
> > | current_next 1
> > | version 14
> > | one2 3
> > | section_number 0
> > | last_section_number 0
> > |- pcr_pid 0b55
> > | reserved2 7
> > | descriptor length 11
> > | zero3 0
> > | reserved3 15
> > | 0x0c: multiplex_buffer_utilization_descriptor
> > | 80 b4 81 68 ...h
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 35 b9 .5.
> > |\
> > |- stream 0x0b55: Video ISO/IEC 13818-2 (2)
> > | descriptor length 16
> > | 0x52: stream_identifier_descriptor
> > | 01 .
> > | 0x02: video_stream_descriptor
> > | 1a 48 5f .H_
> > | 0x06: ds_alignment_descriptor
> > | 02 .
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 32 52 .2R
> > |- stream 0x0bb9: Audio ISO/IEC 13818-3 (4)
> > | descriptor length 17
> > | 0x52: stream_identifier_descriptor
> > | 02 .
> > | 0x0a: iso639_language_descriptor
> > | lang: tur (type: 0)
> > | 0x03: audio_stream_descriptor
> > | 67 g
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 02 03 ...
> > |- stream 0x1773: ISO/IEC 13818-1 Private Sections (5)
> > | descriptor length 13
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 02 ee ...
> > | 0x6f: application_signalling_descriptor
> > | 00 10 e0 ...
> > | 0x52: stream_identifier_descriptor
> > | 04 .
> > |_ 3 streams
> > Program #3 ID 0x0066, service ID 0x3269
> > dvb_read_sections: waiting for table ID 0x02, program ID 0x66
> > dvb_parse_section: received table 0x02, extension ID 0x3269, section 0/0
> > dvb_parse_section: table 0x02, extension ID 0x3269: done
> > PMT
> > | table_id 0x02
> > | section_length 55
> > | one 3
> > | zero 0
> > | syntax 1
> > | transport_stream_id 12905
> > | current_next 1
> > | version 0
> > | one2 3
> > | section_number 0
> > | last_section_number 0
> > |- pcr_pid 0bbd
> > | reserved2 7
> > | descriptor length 23
> > | zero3 0
> > | reserved3 15
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 01 41 ..A
> > | 0x09: conditional_access_descriptor
> > | ca_id 0x2600
> > | ca_pid 0x1fff
> > | privdata length 0
> > | 0x10: smoothing_buffer_descriptor
> > | c0 02 71 c0 04 00 ..q...
> > | 0x0b: system_clock_descriptor
> > | 42 3f B?
> > |\
> > |- stream 0x0bbd: Audio ISO/IEC 11172 (3)
> > | descriptor length 14
> > | 0x52: stream_identifier_descriptor
> > | 02 .
> > | 0x0e: maximum_bitrate_descriptor
> > | c0 01 40 ..@
> > | 0x0a: iso639_language_descriptor
> > | lang: und (type: 0)
> > |_ 1 streams
> > dvb_read_sections: waiting for table ID 0x40, program ID 0x10
> > ERROR dvb_read_sections: no data read on section filter
> > ERROR error while reading the NIT table
> > dvb_read_sections: waiting for table ID 0x42, program ID 0x11
> > dvb_parse_section: received table 0x42, extension ID 0xa414, section 0/0
> > dvb_parse_section: table 0x42, extension ID 0xa414: done
> > SDT
> > | table_id 0x42
> > | section_length 67
> > | one 3
> > | zero 1
> > | syntax 1
> > | transport_stream_id 42004
> > | current_next 1
> > | version 4
> > | one2 3
> > | section_number 0
> > | last_section_number 0
> > | network_id 1070
> > | reserved 255
> > |\
> > |- service 0x3264
> > | EIT schedule 0
> > | EIT present following 0
> > | free CA mode 0
> > | running status 4
> > | descriptor length 11
> > | 0x48: service_descriptor
> > | service type 1
> > | provider 'TV8'
> > | name 'TV8'
> > |- service 0x3265
> > | EIT schedule 0
> > | EIT present following 0
> > | free CA mode 0
> > | running status 4
> > | descriptor length 15
> > | 0x48: service_descriptor
> > | service type 1
> > | provider 'TV8 5'
> > | name 'TV8 5'
> > |- service 0x3269
> > | EIT schedule 0
> > | EIT present following 0
> > | free CA mode 1
> > | running status 4
> > | descriptor length 14
> > | 0x48: service_descriptor
> > | service type 2
> > | provider 'TV8'
> > | name 'TV8Ifb'
> > |_ 3 services
> > Service TV8, provider TV8: digital television
> > Storing as channel TV8
> >
> > Program received signal SIGSEGV, Segmentation fault.
> > 0x00007ffff7ba5cff in dvb_store_channel ()
> >    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> > (gdb) backtrace
>
>
> > #0 0x00007ffff7ba5cff in dvb_store_channel ()
> >    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> > #1 0x00005555555560c6 in run_scan (dvb=0x55555575d2e0, args=0x7fffffffdc80)
> >     at dvbv5-scan.c:313
> > #2 main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562
> >
>
> Just this isn't enough to identify where the error happened. This is
> just a call to the libdvbv5, where the dvb_store_channel() function is
> implemented.
>
> We can't even reproduce it here, as we would need to have the same
> TV signal you're using.
>
> I could try to simulate it here, but I would need you to zap into the
> transponder and record ~60 seconds (using dvbv5-zap -P), for me to be
> able to use my RF generator and try to simulate the error.
>
> The file will be big, so you'll need to temporarely store it at Google
> Drive or some other similar service and pass me a link for downloading
> it.
>
> Thanks,
> Mauro

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: bug: dvbv5-scan segfaults
  2019-08-26 19:25   ` Olcay Korkmaz
@ 2019-08-27 13:09     ` Mauro Carvalho Chehab
  2019-08-27 16:49       ` Olcay Korkmaz
  0 siblings, 1 reply; 6+ messages in thread
From: Mauro Carvalho Chehab @ 2019-08-27 13:09 UTC (permalink / raw)
  To: Olcay Korkmaz; +Cc: linux-media

Em Mon, 26 Aug 2019 22:25:28 +0300
Olcay Korkmaz <olcay.krkmz@gmail.com> escreveu:

> 1.14.2 and git tree build gives the same error
> TS of entire transponder:
> https://drive.google.com/file/d/1zHouZSlbPowyJY5tzT5ro0r4ciPURkbi/view?usp=sharing

Thanks!

Please don't top-post.

> > Em Mon, 26 Aug 2019 19:59:17 +0300
> > Olcay Korkmaz <olcay.mz@gmail.com> escreveu:
> >  


> > > Service TV8, provider TV8: digital television
> > > Storing as channel TV8
> > >
> > > Program received signal SIGSEGV, Segmentation fault.
> > > 0x00007ffff7ba5cff in dvb_store_channel ()
> > >    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> > > (gdb) backtrace  
> >
> >  
> > > #0 0x00007ffff7ba5cff in dvb_store_channel ()
> > >    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> > > #1 0x00005555555560c6 in run_scan (dvb=0x55555575d2e0, args=0x7fffffffdc80)
> > >     at dvbv5-scan.c:313
> > > #2 main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562

Ok, the problem is happening here:

Program received signal SIGSEGV, Segmentation fault.
dvb_store_channel (dvb_file=0x7fffffffe460, __p=0x5555555605d0, dvb_scan_handler=0x555555565060, get_detected=0, 
    get_nit=0) at dvb-file.c:1345
1345			if (dvb_scan_handler->nit->transport) {
(gdb) bt
#0  dvb_store_channel (dvb_file=0x7fffffffe460, __p=0x5555555605d0, dvb_scan_handler=0x555555565060, get_detected=0, 
    get_nit=0) at dvb-file.c:1345
#1  0x0000555555556847 in run_scan (dvb=0x5555555604f0, args=0x7fffffffe4b0) at dvbv5-scan.c:313
#2  main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562

The enclosed patch should fix the issue. Could you please check?

diff --git a/lib/libdvbv5/dvb-file.c b/lib/libdvbv5/dvb-file.c
index d077271a6546..474b59cb6fce 100644
--- a/lib/libdvbv5/dvb-file.c
+++ b/lib/libdvbv5/dvb-file.c
@@ -1342,7 +1342,7 @@ int dvb_store_channel(struct dvb_file **dvb_file,
 			dvb_log(_("Storing as channel %s"), channel);
 		vchannel = dvb_vchannel(parms, dvb_scan_handler->nit, service->service_id);
 
-		if (dvb_scan_handler->nit->transport) {
+		if (dvb_scan_handler->nit && dvb_scan_handler->nit->transport) {
 			network_id = dvb_scan_handler->nit->transport->network_id;
 			transport_id = dvb_scan_handler->nit->transport->transport_id;
 		}


Regards,
Mauro

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: bug: dvbv5-scan segfaults
  2019-08-27 13:09     ` Mauro Carvalho Chehab
@ 2019-08-27 16:49       ` Olcay Korkmaz
  2019-08-27 17:19         ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 6+ messages in thread
From: Olcay Korkmaz @ 2019-08-27 16:49 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: Olcay Korkmaz, linux-media

Mauro Carvalho Chehab <mchehab+samsung@kernel.org>, 27 Ağu 2019 Sal,
16:10 tarihinde şunu yazdı:
>
> Em Mon, 26 Aug 2019 22:25:28 +0300
> Olcay Korkmaz <olcay.krkmz@gmail.com> escreveu:
>
> > 1.14.2 and git tree build gives the same error
> > TS of entire transponder:
> > https://drive.google.com/file/d/1zHouZSlbPowyJY5tzT5ro0r4ciPURkbi/view?usp=sharing
>
> Thanks!
>
> Please don't top-post.

old habit sorry.

>
> > > Em Mon, 26 Aug 2019 19:59:17 +0300
> > > Olcay Korkmaz <olcay.mz@gmail.com> escreveu:
> > >
>
>
> > > > Service TV8, provider TV8: digital television
> > > > Storing as channel TV8
> > > >
> > > > Program received signal SIGSEGV, Segmentation fault.
> > > > 0x00007ffff7ba5cff in dvb_store_channel ()
> > > >    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> > > > (gdb) backtrace
> > >
> > >
> > > > #0 0x00007ffff7ba5cff in dvb_store_channel ()
> > > >    from /usr/lib/x86_64-linux-gnu/libdvbv5.so.0
> > > > #1 0x00005555555560c6 in run_scan (dvb=0x55555575d2e0, args=0x7fffffffdc80)
> > > >     at dvbv5-scan.c:313
> > > > #2 main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562
>
> Ok, the problem is happening here:
>
> Program received signal SIGSEGV, Segmentation fault.
> dvb_store_channel (dvb_file=0x7fffffffe460, __p=0x5555555605d0, dvb_scan_handler=0x555555565060, get_detected=0,
>     get_nit=0) at dvb-file.c:1345
> 1345                    if (dvb_scan_handler->nit->transport) {
> (gdb) bt
> #0  dvb_store_channel (dvb_file=0x7fffffffe460, __p=0x5555555605d0, dvb_scan_handler=0x555555565060, get_detected=0,
>     get_nit=0) at dvb-file.c:1345
> #1  0x0000555555556847 in run_scan (dvb=0x5555555604f0, args=0x7fffffffe4b0) at dvbv5-scan.c:313
> #2  main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562
>
> The enclosed patch should fix the issue. Could you please check?

Thanks, patch fixed the problem.
>
> diff --git a/lib/libdvbv5/dvb-file.c b/lib/libdvbv5/dvb-file.c
> index d077271a6546..474b59cb6fce 100644
> --- a/lib/libdvbv5/dvb-file.c
> +++ b/lib/libdvbv5/dvb-file.c
> @@ -1342,7 +1342,7 @@ int dvb_store_channel(struct dvb_file **dvb_file,
>                         dvb_log(_("Storing as channel %s"), channel);
>                 vchannel = dvb_vchannel(parms, dvb_scan_handler->nit, service->service_id);
>
> -               if (dvb_scan_handler->nit->transport) {
> +               if (dvb_scan_handler->nit && dvb_scan_handler->nit->transport) {
>                         network_id = dvb_scan_handler->nit->transport->network_id;
>                         transport_id = dvb_scan_handler->nit->transport->transport_id;
>                 }
>
>
> Regards,
> Mauro

Regards,
Olcay K.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: bug: dvbv5-scan segfaults
  2019-08-27 16:49       ` Olcay Korkmaz
@ 2019-08-27 17:19         ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 6+ messages in thread
From: Mauro Carvalho Chehab @ 2019-08-27 17:19 UTC (permalink / raw)
  To: Olcay Korkmaz; +Cc: linux-media, Gregor Jasny

Em Tue, 27 Aug 2019 19:49:41 +0300
Olcay Korkmaz <olcay.krkmz@gmail.com> escreveu:

> > Ok, the problem is happening here:
> >
> > Program received signal SIGSEGV, Segmentation fault.
> > dvb_store_channel (dvb_file=0x7fffffffe460, __p=0x5555555605d0, dvb_scan_handler=0x555555565060, get_detected=0,
> >     get_nit=0) at dvb-file.c:1345
> > 1345                    if (dvb_scan_handler->nit->transport) {
> > (gdb) bt
> > #0  dvb_store_channel (dvb_file=0x7fffffffe460, __p=0x5555555605d0, dvb_scan_handler=0x555555565060, get_detected=0,
> >     get_nit=0) at dvb-file.c:1345
> > #1  0x0000555555556847 in run_scan (dvb=0x5555555604f0, args=0x7fffffffe4b0) at dvbv5-scan.c:313
> > #2  main (argc=<optimized out>, argv=<optimized out>) at dvbv5-scan.c:562
> >
> > The enclosed patch should fix the issue. Could you please check?  
> 
> Thanks, patch fixed the problem.

Great!

Patch applied to master and to stable-1.16 and stable-1.14 branches:

	https://git.linuxtv.org/v4l-utils.git/commit/?h=stable-1.14&id=0622c6d3592efa4817cfba148c64bd034baa2420
	https://git.linuxtv.org/v4l-utils.git/commit/?h=stable-1.16&id=7c0eda007e698c5d2cbfb9fb33bb2472551ec46d
	https://git.linuxtv.org/v4l-utils.git/commit/?id=58edfe080b1442c274c85b98cb6e7374c28695cf

Gregor,

Could you please place them on a next stable release for 1.14 and 1.16?

Thanks,
Mauro

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-08-27 17:19 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-26 16:59 bug: dvbv5-scan segfaults Olcay Korkmaz
2019-08-26 17:40 ` Mauro Carvalho Chehab
2019-08-26 19:25   ` Olcay Korkmaz
2019-08-27 13:09     ` Mauro Carvalho Chehab
2019-08-27 16:49       ` Olcay Korkmaz
2019-08-27 17:19         ` Mauro Carvalho Chehab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).