Opened 11 years ago
Closed 9 years ago
#11993 closed Bug Report - Crash (Unverified)
Mythcommflag memory corruption on ARM
Reported by: | Owned by: | cpinkham | |
---|---|---|---|
Priority: | minor | Milestone: | unknown |
Component: | MythTV - Mythcommflag | Version: | 0.27-fixes |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
I'm running MythTV on a Wandboard (armhf architecture). 0.26 worked fine, but after upgrading to 0.27, mythcommflag consistently crashes after a varying amount of time, usually a few seconds. I also tried v0.28-pre-651-g3d91559 and the bug is present there too:
$ mythcommflag --chanid 1621 --starttime 20131224000000 MythTV Commercial Flagger, flagging commercials for:
Modern Family - Disneyland
2013-12-30 13:00:35.685833 C mythcommflag version: master [v0.28-pre-651-g3d91559] www.mythtv.org 2013-12-30 13:00:35.685930 C Qt version: compile: 4.8.4, runtime: 4.8.4 2013-12-30 13:00:35.782356 E Error Loading en_us translation for module mythfrontend 2013-12-30 13:00:36.262757 E Filter dir '/usr/lib/mythtv/filters' doesn't exist? Finding Logo* Error in `mythcommflag': free(): invalid next size (fast): 0x00485c88 * Handling Aborted Aborted
This is running the Ubuntu 13.10 image from http://www.armhf.com/index.php/boards/wandboard/ . The crash also happens using the Debian Wheezy image from the same page. Apart from mythcommflag, all other MythTV functions seem to work normally.
I'm attaching output from gdb and valgrind.
Attachments (3)
Change History (9)
comment:1 Changed 11 years ago by
The bug also appears when running MythTV 0.27 on Archlinux:
$ mythcommflag --chanid 1621 --starttime 20140110000000 2014-01-09 17:56:20.778053 C mythcommflag version: tag: v0.27 [317d5b7] www.mythtv.org 2014-01-09 17:56:20.778191 C Qt version: compile: 4.8.5, runtime: 4.8.5 MythTV Commercial Flagger, flagging commercials for:
Modern Family - Diamond in the Rough
Finding Logo* Error in `mythcommflag': corrupted double-linked list: 0x0014a960 * Handling Aborted Aborted (core dumped)
comment:2 Changed 11 years ago by
Another data point: if I run mythcommflag with --skipdb (on the same recording), there's no memory corruption and the detection finishes normally:
$ mythcommflag --skipdb --file 1621_20140110000000.mpg 2014-01-11 22:01:54.603370 C mythcommflag version: tag: v0.27 [317d5b7] www.mythtv.org 2014-01-11 22:01:54.603498 C Qt version: compile: 4.8.5, runtime: 4.8.5 MythTV Commercial Flagger, flagging commercials for:
1621_20140110000000.mpg
2014-01-11 22:13:31.918925 E decoding error
eno: Unknown error 541478725 (541478725)
[...] commercialBreakListFor: /mnt/hd/mythstorage/recordings/1621_20140110000000.mpg totalframecount: 53856
framenum: 12119 marktype: 4 framenum: 18721 marktype: 5 framenum: 30853 marktype: 4 framenum: 36554 marktype: 5 framenum: 47850 marktype: 4 framenum: 52364 marktype: 5 framenum: 53683 marktype: 4 framenum: 53832 marktype: 5
4
comment:3 Changed 11 years ago by
Another observation I made is that for my (small) recording library, "mythcommflag --chanid XX --starttime YY" works on a few recordings, namely those that are in SD.
Is it possible that the HD recordings trigger an overflow somewhere?
comment:4 Changed 11 years ago by
The Archlinux update to mythtv-1:0.27-7.1 (or possibly to qt4-4.8.5-8) appears to have solved this problem. I'll keep an eye on the commercial flagging and update the ticket in a few days.
gdb backtrace