Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EIT.json crashes mumudvb #115

Closed
trifle opened this issue Mar 17, 2016 · 6 comments
Closed

EIT.json crashes mumudvb #115

trifle opened this issue Mar 17, 2016 · 6 comments

Comments

@trifle
Copy link

trifle commented Mar 17, 2016

Hi, I'm running on the current master branch (mumudvb2, it reports 2.0.0_20150614_mumudvb2 but I've checked out and compiled today) and have an issue where requesting the EIT crashes mumudvb.

It looks like this:

  $ curl localhost:4001/monitor/EIT.json
  curl: (52) Empty reply from server

Process output:

    *** Error in `mumudvb': free(): invalid next size (fast): 0x0000000001786370 ***

This happens with three out of four local DVB-T multiplexes (RTL, ZDR, ARD).
Pro7/Sat.1 appears to be immune and works just fine.

Configuration for all four instances is similar to this:

card=1
freq=578
unicast=1
autoconfiguration=full
port_http=4001
store_eit=1

I'd be happy to help but don't have much to start here.
Any advice would be much appreciated.

(By the way, both mumudvb and the new EIT webservice are a god-sent. Thanks for all your work on it!
I've previously used a hand-patched version of tv_grab_dvb which worked but was incredibly clumsy.)

@braice
Copy link
Owner

braice commented Mar 17, 2016

Hello

Thank you for your report

The first thing which will help me in this case is to have a backtrace, to
do it go to the source directory type
gdb ./mumudvb

then
run [your usual arguments]

Then when it crashes just type
bt

this will tell me which piece of code is causing the issue

Brice

2016-03-17 11:58 GMT-04:00 Pascal Jürgens notifications@github.com:

Hi, I'm running on the current master branch (mumudvb2, it reports
2.0.0_20150614_mumudvb2 but I've checked out and compiled today) and have
an issue where requesting the EIT crashes mumudvb.

It looks like this:

$ curl localhost:4001/monitor/EIT.json
curl: (52) Empty reply from server

Process output:

*** Error in `mumudvb': free(): invalid next size (fast): 0x0000000001786370 ***

This happens with three out of four local DVB-T multiplexes (RTL, ZDR,
ARD).
Pro7/Sat.1 appears to be immune and works just fine.

Configuration for all four instances is similar to this:

card=1
freq=578
unicast=1
autoconfiguration=full
port_http=4001
store_eit=1

I'd be happy to help but don't have much to start here.
Any advice would be much appreciated.

(By the way, both mumudvb and the new EIT webservice are a god-sent.
Thanks for all your work on it!
I've previously used a hand-patched version of tv_grab_dvb which worked
but was incredibly clumsy.)


You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
#115

@trifle
Copy link
Author

trifle commented Mar 19, 2016

Hi Brice,

thanks, I received this trace on a non-production machine with identical specs:

Program received signal SIGSEGV, Segmentation fault.
__strcmp_sse2 () at ../sysdeps/x86_64/multiarch/../strcmp.S:210
210 ../sysdeps/x86_64/multiarch/../strcmp.S: No such file or directory.
(gdb) bt
#0 __strcmp_sse2 () at ../sysdeps/x86_64/multiarch/../strcmp.S:210
#1 0x00007ffff73de800 in __tfind (key=key@entry=0x7ffffff2fd38, vrootp=vrootp@entry=0x7ffff76a8ae0 ,
compar=compar@entry=0x7ffff7315a40 <known_compare>) at tsearch.c:320
#2 0x00007ffff7315b17 in __gconv_find_shlib (name=name@entry=0x7ffffff2fd70 "/usr/lib/x86_64-linux-gnu/gconv/ISO8859-4.so") at gconv_dl.c:82
#3 0x00007ffff731503e in find_module (directory=0x7ffff7fbed7e "/usr/lib/x86_64-linux-gnu/gconv/", filename=0x7ffff7fbf204 "ISO8859-4.so",
result=result@entry=0xa8cf60) at gconv_cache.c:195
#4 0x00007ffff7315756 in __gconv_lookup_cache (toset=toset@entry=0x7ffffff2ffb0 "UTF8//",
fromset=fromset@entry=0x7ffffff2ff90 "ISO8859-4//", handle=handle@entry=0x7ffffff2ff20, nsteps=nsteps@entry=0x7ffffff2ff30,
flags=flags@entry=0) at gconv_cache.c:392
#5 0x00007ffff730d3da in __gconv_find_transform (toset=toset@entry=0x7ffffff2ffb0 "UTF8//",
fromset=fromset@entry=0x7ffffff2ff90 "ISO8859-4//", handle=handle@entry=0x7ffffff2ff20, nsteps=nsteps@entry=0x7ffffff2ff30,
flags=flags@entry=0) at gconv_db.c:731
#6 0x00007ffff730bd5f in __gconv_open (toset=toset@entry=0x7ffffff2ffb0 "UTF8//", fromset=fromset@entry=0x7ffffff2ff90 "ISO8859-4//",
handle=handle@entry=0x7ffffff2ffd0, flags=flags@entry=0) at gconv_open.c:172
#7 0x00007ffff730b8e2 in iconv_open (tocode=0x7ffffff2ffb0 "UTF8//", tocode@entry=0x41eb91 "UTF8", fromcode=0x7ffffff2ff90 "ISO8859-4//")
at iconv_open.c:71
#8 0x00000000004075fa in convert_en300468_string (string=string@entry=0x7ffffff30090 "", max_len=max_len@entry=4096, debug=debug@entry=0)
at log.c:1153
#9 0x000000000041778c in eit_show_short_evt_descr (buf=buf@entry=0x9b38ca "M:deu5\005Medical Detectives - Geheimnisse der Gerichtsmedizin",
reply=reply@entry=0x636060) at unicast_EIT.c:476
#10 0x0000000000417eb9 in eit_display_descriptor (buf=buf@entry=0x9b38ca "M:deu5\005Medical Detectives - Geheimnisse der Gerichtsmedizin",
descriptors_loop_len=81, reply=reply@entry=0x636060) at unicast_EIT.c:282
#11 0x00000000004182bb in eit_display_contents (full_eit=full_eit@entry=0x9b38b0, reply=reply@entry=0x636060) at unicast_EIT.c:239
#12 0x0000000000418349 in unicast_send_EIT_section (eit_section=0x9b38b0, num=num@entry=200, reply=reply@entry=0x636060) at unicast_EIT.c:37
#13 0x000000000041b113 in unicast_send_EIT (eit_packets=eit_packets@entry=0x653930, Socket=37) at unicast_monit.c:259
#14 0x000000000041622b in unicast_handle_message (unicast_vars=unicast_vars@entry=0x7ffffff3aed0, client=0x636310,
channels=channels@entry=0x7ffffff3d118, number_of_channels=number_of_channels@entry=4,
strengthparams=strengthparams@entry=0x7ffffff32780, auto_p=auto_p@entry=0x7ffffff3b9b0, cam_p=cam_p@entry=0x0,
scam_vars=scam_vars@entry=0x0, eit_packets=eit_packets@entry=0x653930) at unicast_http.c:818
#15 0x000000000041659f in unicast_handle_fd_event (unicast_vars=unicast_vars@entry=0x7ffffff3aed0, channels=channels@entry=0x7ffffff3d118,
number_of_channels=4, strengthparams=strengthparams@entry=0x7ffffff32780, auto_p=auto_p@entry=0x7ffffff3b9b0, cam_p=cam_p@entry=0x0,
scam_vars=scam_vars@entry=0x0, eit_packets=0x653930) at unicast_http.c:391
#16 0x0000000000404721 in main (argc=, argv=) at mumudvb.c:1289

@braice
Copy link
Owner

braice commented Mar 21, 2016

Hi

Just to check if it is a regression,
Can you try with the version before the commit on eit (
c74a81d
)

Thank you
On Mar 19, 2016 17:44, "Pascal Jürgens" notifications@github.com wrote:

Hi Brice,

thanks, I received this trace on a non-production machine with identical
specs:

Program received signal SIGSEGV, Segmentation fault.
__strcmp_sse2 () at ../sysdeps/x86_64/multiarch/../strcmp.S:210
210 ../sysdeps/x86_64/multiarch/../strcmp.S: No such file or directory.
(gdb) bt
#0 __strcmp_sse2 () at ../sysdeps/x86_64/multiarch/../strcmp.S:210
#1 #1 0x00007ffff73de800 in
__tfind (key=key@entry=0x7ffffff2fd38, vrootp=vrootp@entry=0x7ffff76a8ae0
,
compar=compar@entry=0x7ffff7315a40 ) at tsearch.c:320
#2 #2 0x00007ffff7315b17 in
__gconv_find_shlib (name=name@entry=0x7ffffff2fd70
"/usr/lib/x86_64-linux-gnu/gconv/ISO8859-4.so") at gconv_dl.c:82
#3 #3 0x00007ffff731503e in
find_module (directory=0x7ffff7fbed7e "/usr/lib/x86_64-linux-gnu/gconv/",
filename=0x7ffff7fbf204 "ISO8859-4.so",
result=result@entry=0xa8cf60) at gconv_cache.c:195
#4 #4 0x00007ffff7315756 in
__gconv_lookup_cache (toset=toset@entry=0x7ffffff2ffb0 "UTF8//",
fromset=fromset@entry=0x7ffffff2ff90 "ISO8859-4//", handle=handle@entry=0x7ffffff2ff20,
nsteps=nsteps@entry=0x7ffffff2ff30,
flags=flags@entry=0) at gconv_cache.c:392
#5 #5 0x00007ffff730d3da in
__gconv_find_transform (toset=toset@entry=0x7ffffff2ffb0 "UTF8//",
fromset=fromset@entry=0x7ffffff2ff90 "ISO8859-4//", handle=handle@entry=0x7ffffff2ff20,
nsteps=nsteps@entry=0x7ffffff2ff30,
flags=flags@entry=0) at gconv_db.c:731
#6 #6 0x00007ffff730bd5f in
__gconv_open (toset=toset@entry=0x7ffffff2ffb0 "UTF8//",
fromset=fromset@entry=0x7ffffff2ff90 "ISO8859-4//",
handle=handle@entry=0x7ffffff2ffd0, flags=flags@entry=0) at
gconv_open.c:172
#7 #7 0x00007ffff730b8e2 in
iconv_open (tocode=0x7ffffff2ffb0 "UTF8//", tocode@entry=0x41eb91 "UTF8",
fromcode=0x7ffffff2ff90 "ISO8859-4//")
at iconv_open.c:71
#8 #8 0x00000000004075fa in
convert_en300468_string (string=string@entry=0x7ffffff30090 "",
max_len=max_len@entry=4096, debug=debug@entry=0)
at log.c:1153
#9 #9 0x000000000041778c in
eit_show_short_evt_descr (buf=buf@entry=0x9b38ca "M:deu5\005Medical
Detectives - Geheimnisse der Gerichtsmedizin",
reply=reply@entry=0x636060) at unicast_EIT.c:476
#10 #10 0x0000000000417eb9 in
eit_display_descriptor (buf=buf@entry=0x9b38ca "M:deu5\005Medical
Detectives - Geheimnisse der Gerichtsmedizin",
descriptors_loop_len=81, reply=reply@entry=0x636060) at unicast_EIT.c:282
#11 #11 0x00000000004182bb in
eit_display_contents (full_eit=full_eit@entry=0x9b38b0, reply=reply@entry=0x636060)
at unicast_EIT.c:239
#12 #12 0x0000000000418349 in
unicast_send_EIT_section (eit_section=0x9b38b0, num=num@entry=200,
reply=reply@entry=0x636060) at unicast_EIT.c:37
#13 #13 0x000000000041b113 in
unicast_send_EIT (eit_packets=eit_packets@entry=0x653930, Socket=37) at
unicast_monit.c:259
#14 #14 0x000000000041622b in
unicast_handle_message (unicast_vars=unicast_vars@entry=0x7ffffff3aed0,
client=0x636310,
channels=channels@entry=0x7ffffff3d118,
number_of_channels=number_of_channels@entry=4,
strengthparams=strengthparams@entry=0x7ffffff32780, auto_p=auto_p@entry=0x7ffffff3b9b0,
cam_p=cam_p@entry=0x0,
scam_vars=scam_vars@entry=0x0, eit_packets=eit_packets@entry=0x653930) at
unicast_http.c:818
#15 #15 0x000000000041659f in
unicast_handle_fd_event (unicast_vars=unicast_vars@entry=0x7ffffff3aed0,
channels=channels@entry=0x7ffffff3d118,
number_of_channels=4, strengthparams=strengthparams@entry=0x7ffffff32780,
auto_p=auto_p@entry=0x7ffffff3b9b0, cam_p=cam_p@entry=0x0,
scam_vars=scam_vars@entry=0x0, eit_packets=0x653930) at unicast_http.c:391
#16 #16 0x0000000000404721 in
main (argc=, argv=) at mumudvb.c:1289


You are receiving this because you commented.
Reply to this email directly or view it on GitHub
#115 (comment)

@trifle
Copy link
Author

trifle commented Mar 30, 2016

Hi @braice,

sorry for the delay (was on vacation). You seem to be right: I can't reproduce the crash with c74a81d .
Anything else I can help with?

@braice
Copy link
Owner

braice commented May 7, 2016

Hi
You can have a try with the log.c I attached to issue #100 hopefully it
should solve the problem.

Best

Brice
On Mar 30, 2016 11:30 AM, "Pascal Jürgens" notifications@github.com wrote:

Hi @braice https://github.com/braice,

sorry for the delay (was on vacation). You seem to be right: I can't
reproduce the crash with c74a81d.
Anything else I can help with?


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#115 (comment)

@trifle
Copy link
Author

trifle commented May 7, 2016

HI Brice,
thanks, I'll give it a try!

Best,
Pascal

@braice braice closed this as completed Jan 3, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants