Closed Bug 1239465 Opened 8 years ago Closed 8 years ago

crash in libavcodec.so.54.35.0@0x9e102

Categories

(Core :: Audio/Video: Playback, defect, P2)

43 Branch
x86
Linux
defect

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: alex_mayorga, Assigned: jya)

Details

(Keywords: crash)

Crash Data

This bug was filed from the Socorro interface and is 
report bp-dc7d502d-12af-4490-b8dc-b093a2160113.
=============================================================

¡Hola!

91 crashes in the past month per https://crash-stats.mozilla.com/report/list?product=Firefox&range_unit=days&range_value=28&signature=libavcodec.so.54.35.0%400x9e102#tab-reports

¡Gracias!

Crashing Thread (56)
Frame	Module	Signature	Source
Ø 0	libavcodec.so.54.35.0	libavcodec.so.54.35.0@0x9e102	
1	libxul.so	nsACString_internal::ReplacePrep	/build/firefox-jzktNe/firefox-43.0.4+build3/xpcom/string/nsTSubstring.cpp:178
2		@0x83f32800	
3	libxul.so	nsEventQueueBase<mozilla::Monitor>::GetEvent	/build/firefox-jzktNe/firefox-43.0.4+build3/xpcom/threads/nsEventQueue.cpp:65
4	libxul.so	nsThreadPool::Run	/build/firefox-jzktNe/firefox-43.0.4+build3/xpcom/threads/nsThreadPool.cpp:225
5	libxul.so	nsThread::ProcessNextEvent	/build/firefox-jzktNe/firefox-43.0.4+build3/xpcom/threads/nsThread.cpp:950
6	libxul.so	NS_ProcessNextEvent	/build/firefox-jzktNe/firefox-43.0.4+build3/xpcom/glue/nsThreadUtils.cpp:277
7	libxul.so	mozilla::ipc::MessagePumpForNonMainThreads::Run	/build/firefox-jzktNe/firefox-43.0.4+build3/ipc/glue/MessagePump.cpp:326
8	libxul.so	MessageLoop::RunInternal	/build/firefox-jzktNe/firefox-43.0.4+build3/ipc/chromium/src/base/message_loop.cc:234
9	libxul.so	MessageLoop::Run	/build/firefox-jzktNe/firefox-43.0.4+build3/ipc/chromium/src/base/message_loop.cc:227
10	libxul.so	nsThread::ThreadFunc	/build/firefox-jzktNe/firefox-43.0.4+build3/xpcom/threads/nsThread.cpp:379
11	libnspr4.so	_pt_root	/build/firefox-jzktNe/firefox-43.0.4+build3/nsprpub/pr/src/pthreads/ptthread.c:212
Ø 12	libpthread-2.19.so	libpthread-2.19.so@0x6f6f	
13	libc-2.19.so	libc-2.19.so@0xebbed
Stack trace doesn't look believable. nsACString shouldn't be calling into libavcodec.

Question is, was this the old gstreamer code, or the new ffmpeg code? I don't see gstreamer in the modules tab in the crash report, so I'd guess the later. Jean-Yves, any ideas? Can we bump the minimum version to avoid this issue?
Flags: needinfo?(jyavenard)
Setting P2 based on position in top-crashes. We want to fix this, but there are higher-priority issues we'll need to get to first.
Priority: -- → P2
Yeah, the stack trace doesn't make sense.

It's 43, so gstreamer shouldn't be used.

If we bump the minimum version, we'll disable MSE on Ubuntu 14.04 which is the latest Ubuntu LTS version to date.

I would much prefer to find out what the problem is.

We have other reports about a leak in libavcodec 54, so maybe that's related.

I'll investigate what the problem is.

But a STR would be ace, as well as which sites were visited at the time
Flags: needinfo?(jyavenard)
¡Hola!

I'm trying to get URLs from an affected user in SUMO over at https://support.mozilla.org/en/questions/1104362/ Dropping the breadcrumb her FWIW.

¡Gracias!
I'll have a look
Assignee: nobody → jyavenard
note that it's most certainly fixed in firefox >= 46 as we now use our own ffvp9 decode which is libavcodec 57
Flags: needinfo?(jyavenard)
just so I don't forget
Flags: needinfo?(jyavenard)
Here's a bunch from me, from both FF43/44:

bp-fffc2327-2e77-4c08-8820-577162160129
bp-753655fd-c45e-49f0-a4cb-3fd2f2160129
bp-91e8efb7-2d20-4ea6-859a-714f22160129
bp-b7c7b1d3-2aa1-404c-851c-591172160129
bp-9a44b745-0cd8-42b5-ac2e-4e3352160129
bp-0838ef4a-eb7b-4ba3-a5c7-bf5b42160129
bp-90f443ae-8033-47e5-a4b9-4846c2160129
bp-641a303b-565f-465c-b0a3-54b852160129
bp-cb7516e3-30d9-49ee-864c-9bd062160129
bp-29b6ddbd-9e17-4ade-a58b-675372160129
bp-74d435b4-3ed5-4d43-8bdb-af9bd2160129
bp-7cfc3c0b-eea7-4ffb-a953-cb7682160129
bp-3a6f230a-c1d5-4afd-b60a-6f36f2160129
bp-77df2776-eab7-4bc0-ae8c-528a82160129
bp-f7dbded9-4c56-4734-b911-f95682160129
bp-05a38ded-3610-4ecd-8061-842312160129
bp-80254a33-f0fa-4e8b-954e-6a7ed2160129
bp-99e37033-85bc-4656-b781-edd742160129
bp-1f191a49-261c-4cf7-90a7-df6dc2160129
bp-b16dc624-0994-4f55-84ee-569482160129
bp-a358e199-f0f1-4aab-b7d8-bf71c2160129
bp-18641f7b-0366-47e2-8726-aff252160125
bp-24735a40-c52c-43d0-86d8-fcf412160125
bp-ae7554a7-f126-4bf5-9d3b-a9a922160125
bp-23a92206-fc03-4e5c-9ee8-857522160125
bp-e4694f2c-92df-4665-b6e1-1a0d62160125
bp-70e10ba8-a7d5-48bd-ac33-4d7ce2160125
bp-29b7be53-2632-4e94-8721-717fa2160125
bp-40988d71-4bc1-4bde-b3e8-5700d2160125
bp-3b0b6b74-95e0-494b-bcc7-41c212160125
bp-6c8fbf5c-03af-4a1b-947d-9e5c72160125
bp-bdc43735-94ab-4d2c-96fa-a37d72160125
bp-a6000b58-c661-406c-a6a5-9745f2160125
bp-5b530471-413e-4336-b873-eea222160125
bp-553e5c75-ab45-4b92-a6e6-89de02160125
bp-388c1ea7-8b7a-46c7-938f-f94ca2160125
bp-79d35797-8cb6-4dab-a44d-8a5c02160125
bp-f0b03fcc-636d-4668-9f37-cceb52160125
bp-b52ad66f-aae7-47ef-9bf4-5712a2160125
bp-4f420d2e-0b9f-415d-bdf4-0bce92160125
bp-e4eb3fdd-7e74-4b3e-a54a-95c682160125
bp-59d6de30-3f8f-462d-93bb-e597b2160125
bp-91762e31-6f23-407f-9f12-d26482160125
bp-d9126b8d-a564-4414-a488-531332160125
bp-dca23efa-2cee-42fc-9a0d-a02de2160125
bp-f5cbba7d-927e-43cf-8a4e-0122c2160125
bp-8045a3bf-9aa0-4448-b522-bc2562160125
bp-eef12d2a-cf27-4bf8-9d63-e01af2160125
bp-b2b04639-5355-482c-9f6d-2035e2160124
bp-2851c537-2450-478d-9889-875552160124
bp-7c0b160c-a768-4154-8794-469f02160124
bp-98f329c2-2f2c-44fd-a109-e2d072160124
bp-d7cdd46a-fc54-4b2c-bafa-3df402160124
bp-f383438c-f58c-4469-bb7a-abfe12160124

I've tried various versions of libavcodec. Originally I had libavcodec-extra-54 from ppa:mc3man/trusty-media, however I suspected it was causing problems so I reverted to the latest native version, 6:9.18-0ubuntu0.14.04.1. Then I tried libavcodec54 (native version), which replaces libavcodec-extra-54, to no avail.

I've also tried uninstalling all plugins/extensions, reinstalling FF, creating a new profile, disabling HW acceleration.
The problem seems to be resolved with a different version of "libavutil52", which is a dependency. I seem to have been using libraries from a conflicting third-party PPAs. Now I made sure they matched.
Now that makes sense... Incompatible libraries using together (e.g. libavcodec from one version used with libavutil from another.) 
There's no way that could work and nothing we can do about it.

I'm closing the bug on that basis.
Status: NEW → RESOLVED
Closed: 8 years ago
Flags: needinfo?(jyavenard)
Resolution: --- → WORKSFORME
It WORKSFORME but it might not for @alex_mayorga :) If anybody is reading this and wondering what to check, you can determine a package's dependencies with "apt show [package]". Then you can determine what version you have with "apt-cache policy [package]". You can query all the dependencies collectively as follows:

for pkg in libavutil52 libc6 libfdk-aac0 libgsm1 libmp3lame0, libopenjpeg2, libopus0 libschroedinger-1.0-0 libspeex1 libtheora0 libva1 libvorbis0a libvorbisenc2 libvpx1 libx264-142 libxvidcore4 zlib1g; do apt-cache policy $pkg ; done
(In reply to Emre from comment #12)
> It WORKSFORME but it might not for @alex_mayorga :) 

That is true ; however seeing the backtrace and that they make no sense whatsoever, indicates either memory corruption or running rubbish code, something that would happen if you had libavcodec loading the wrong library.

So that it's actually an install issue is the most probably cause
You need to log in before you can comment on or make changes to this bug.