[mythtv-users] master: DVB-T segfaults in mythtv-setup and mythbackend

Klaas de Waal klaas.de.waal at gmail.com
Tue Feb 2 06:42:50 UTC 2021


On Tue, 2 Feb 2021 at 07:29, Klaas de Waal <klaas.de.waal at gmail.com> wrote:

>
>
> On Mon, 1 Feb 2021 at 19:09, Klaas de Waal <klaas.de.waal at gmail.com>
> wrote:
>
>>
>>
>> On Mon, 1 Feb 2021 at 16:54, John Pilkington <johnpilk222 at gmail.com>
>> wrote:
>>
>>> On 01/02/2021 11:27, John Pilkington wrote:
>>>
>>> >>> I have tried retuning the el7 box but that segfaults before the end
>>> >>> of an 'all transports' scan.
>>> >> Now reverted to last week's build.
>>> >
>>> > ... to continue.  I left the Fedora 32 box building and recording
>>> > overnight, and now have master f53465d running (under a new kernel).
>>> >
>>> > I rescanned both tuners and have edited the recordings with no
>>> problems
>>> > seen.  The cutlist editor didn't crash or have any noticeable hangups,
>>> > so all seems well.  I didn't see the problem reported by Klaas either.
>>> >
>>> > So I'll try another brew for el7...
>>> >
>>> > Thanks,
>>> >
>>> > John P
>>> >
>>> >
>>>
>>> The new build gives this same set of warnings on leaving mythtv-setup.
>>> I saw something very similar in the ubuntu 18.04 master ppa last
>>> Thursday, but don't have that box now.
>>>
>>> {{{
>>>
>>> 2021-02-01 14:40:17.570 I  Clearing OpenGL painter cache.
>>> 2021-02-01 14:40:17.570 I  OpenGL: MythRenderOpenGL closing
>>> 2021-02-01 14:40:17.572 I  Display: Deleting
>>> 2021-02-01 14:40:17.575 I  PowerDBus: Closing interfaces
>>> 2021-02-01 14:40:17.583 C  'SSDP': MThread epilog was never run! (SSDP)
>>> 2021-02-01 14:40:17.583 C  'SSDP': MThread destructor called while
>>> thread still running! (SSDP)
>>> Handling Illegal instruction
>>> Illegal instruction
>>>
>>> }}}
>>>
>>> A channel scan starts but segfaults after around 5 transports,as below.
>>> I haven't tried running mythbackend again.
>>>
>>> {{{
>>>
>>> 2021-02-01 15:17:45.736 I  CardUtil[1]: Set delivery system: DVB-T
>>> 2021-02-01 15:19:17.740 C  'DVBRead': MThread epilog was never run!
>>> (DVBRead)
>>> 2021-02-01 15:19:17.740 C  'DVBRead': MThread destructor called while
>>> thread still running! (DVBRead)
>>> Handling Segmentation fault
>>> Segmentation fault
>>>
>>> }}}
>>>
>>> This el7 build from 24 Jan runs well:
>>> mythtv-32.Pre.2062.g03dd08c3eb-100.el7.x86_64.rpm  That was before the
>>> std::chrono updates.
>>>
>>> and today's master in F32 is probably better (cutlist editor less likely
>>> to hang)
>>>
>>> el7 has gssdp v 1.0.2-1 from SL security.  F32 has v 1.0.5-1
>>>
>>> I suppose all this just underlines the need to move on from el7, but it
>>> looks to me as if 'buntu 18.04 has it too.
>>>
>>>  My mythbackend and mythtv-setup run OK but that is on Fedora 33.
>> The failure of mythfrontend master, as reported by me, is on Ubuntu 18.
>> The mythfrontend master on Fedora 33 does not have this problem.
>> The mythfrontend master on Ubuntu 18 is now from a few weeks back, before
>> the std::chrono updates, and that runs OK.
>> Looks to me that there is indeed something wrong with the std::chrono
>> updates on Ubuntu 18.
>> Have not done a complete bisect but even the single std::chrono commit is
>> very large.
>> The problem I see must be in the code that does the "animation"; the GUI
>> usually goes in about 5 steps of about 20 milliseconds (guess)
>> from one presentation to another, fading out the old and fading in the
>> new.
>> My guess is that this timer is now broken; in my mythfrontend this is
>> where it seems to stop.
>>
>>
> Had this morning bisect for breakfast...
> I could reproduce the mythtv-setup segfault on exit on Ubuntu 18.
> Git says:
> Bisecting: 0 revisions left to test after this (roughly 0 steps)
> [a9d53f3230a12d03182ee7df5e85cbcefc40abea] Convert myth threads to
> std::chrono. (2)
>
> This is the commit that introduces the bug:
>
>  Commit: a9d53f3230a12d03182ee7df5e85cbcefc40abea
>
> https://github.com/MythTV/mythtv/commit/a9d53f3230a12d03182ee7df5e85cbcefc40abea
>   Author: David Hampton <mythtv at love2code.net>
>   Date:   2021-01-25 (Mon, 25 Jan 2021)
>
>   Changed paths:
>     M mythplugins/mythmusic/mythmusic/playlistcontainer.cpp
>     M mythtv/libs/libmyth/audio/audiooutputalsa.cpp
>     M mythtv/libs/libmyth/audio/audiooutputbase.cpp
>     M mythtv/libs/libmyth/audio/audiooutputca.cpp
>     M mythtv/libs/libmyth/audio/audiooutputoss.cpp
>     M mythtv/libs/libmyth/audio/volumebase.cpp
>     M mythtv/libs/libmythbase/mthread.cpp
>     M mythtv/libs/libmythbase/mthread.h
>     M mythtv/libs/libmythbase/mthreadpool.cpp
>     M mythtv/libs/libmythbase/mthreadpool.h
>     M mythtv/libs/libmythbase/mythdate.cpp
>     M mythtv/libs/libmythbase/mythdate.h
>     M mythtv/libs/libmythbase/mythdownloadmanager.cpp
>     M mythtv/libs/libmythbase/mythsystemunix.cpp
>     M mythtv/libs/libmythmetadata/imagescanner.cpp
>     M mythtv/libs/libmythprotoserver/mythsocketmanager.cpp
>     M mythtv/libs/libmythprotoserver/requesthandler/deletethread.cpp
>     M mythtv/libs/libmythtv/HLS/httplivestreambuffer.cpp
>     M mythtv/libs/libmythtv/cardutil.cpp
>     M mythtv/libs/libmythtv/cardutil.h
>     M mythtv/libs/libmythtv/channelscan/channelscan_sm.cpp
>     M mythtv/libs/libmythtv/channelscan/externrecscanner.cpp
>     M mythtv/libs/libmythtv/channelscan/iptvchannelfetcher.cpp
>     M mythtv/libs/libmythtv/channelscan/vboxchannelfetcher.cpp
>     M mythtv/libs/libmythtv/io/mythfilebuffer.cpp
>     M mythtv/libs/libmythtv/io/mythmediabuffer.cpp
>     M mythtv/libs/libmythtv/mythplayer.cpp
>     M mythtv/libs/libmythtv/previewgenerator.cpp
>     M mythtv/libs/libmythtv/recorders/DeviceReadBuffer.cpp
>     M mythtv/libs/libmythtv/recorders/cetonstreamhandler.cpp
>     M mythtv/libs/libmythtv/recorders/dvbchannel.h
>     M mythtv/libs/libmythtv/recorders/dvbsignalmonitor.cpp
>     M mythtv/libs/libmythtv/recorders/signalmonitor.cpp
>     M mythtv/libs/libmythtv/recorders/signalmonitor.h
>     M mythtv/libs/libmythtv/recorders/v4lrecorder.h
>     M mythtv/libs/libmythtv/tv_rec.cpp
>     M mythtv/libs/libmythtv/tv_rec.h
>     M mythtv/libs/libmythui/mythmainwindowprivate.h
>     M mythtv/libs/libmythui/mythuianimation.cpp
>     M mythtv/libs/libmythui/mythuianimation.h
>     M mythtv/libs/libmythupnp/taskqueue.cpp
>     M mythtv/programs/mythbackend/mainserver.cpp
>     M mythtv/programs/mythbackend/scheduler.cpp
>     M mythtv/programs/mythfrontend/galleryslide.cpp
>     M mythtv/programs/mythfrontend/galleryslide.h
>     M mythtv/programs/mythfrontend/galleryslideview.cpp
>     M mythtv/programs/mythfrontend/galleryslideview.h
>     M mythtv/programs/mythfrontend/gallerytransitions.cpp
>     M mythtv/programs/mythfrontend/gallerytransitions.h
>
>   Log Message:
>   -----------
>   Convert myth threads to std::chrono. (2)
>
> This commit focuses on converting MThread, and propagating those
> changes throughout the rest of the code without changing too many
> other interfaces. There are some temporary conversions to/from
> int/std::chrono::millisecond that should be removed with later
> commits.
>
>
Hi David,

Thanks for looking into the OSD issue but please note that I have reported
that in ticket #310.
The crash of mythtv-setup as reported by John and reproduced by me is a
different issue and is, as I understand it, a std::chrono issue according
to the bisect.

Klaas.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mythtv.org/pipermail/mythtv-users/attachments/20210202/2f74bf6f/attachment.htm>


More information about the mythtv-users mailing list