Closed
Bug 605861
Opened 14 years ago
Closed 14 years ago
crash using OSS when trying to rewind video
Categories
(Core :: Audio/Video, defect)
Tracking
()
RESOLVED
DUPLICATE
of bug 562488
People
(Reporter: pa36ouHu4er, Unassigned)
References
()
Details
(Keywords: crash)
User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.10) Gecko/20100930 Firefox/3.6.10
Build Identifier: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.10) Gecko/20100930 Firefox/3.6.10
Сrash when trying to rewind html5 video in freebsd head ff 3.6.10
Reproducible: Always
Steps to Reproduce:
1. open http://fosscasts.com/screencasts/6-System-Monitoring-With-Monit
2. start html5 video
3. try to rewind... crash :(
Actual Results:
bus error (core dump)
Expected Results:
all work
%uname -a
FreeBSD micro 9.0-CURRENT FreeBSD 9.0-CURRENT #3: Tue Oct 19 19:56:40 MSD 2010 root@micro:/usr/obj/usr/src/sys/GENERIC amd64
%firefox3 --version
Mozilla Firefox 3.6.10, Copyright (c) 1998 - 2010 mozilla.org
Comment 1•14 years ago
|
||
we need a stacktrace with debug symvols...
Component: General → Video/Audio
Product: Firefox → Core
QA Contact: general → video.audio
Reporter | ||
Comment 2•14 years ago
|
||
i upgrade ff to 3.6.11 && kldload sem, but...
Program received signal SIGBUS, Bus error.
[Switching to Thread 8123ed300 (LWP 100337)]
0x00000008059966cf in pthread_mutex_lock () from /lib/libthr.so.3
(gdb) bt
#0 0x00000008059966cf in pthread_mutex_lock () from /lib/libthr.so.3
#1 0x00000008015cdc70 in std::__adjust_heap<__gnu_cxx::__normal_iterator<nsRefPtr<imgCacheEntry>*, std::vector<nsRefPtr<imgCacheEntry>, std::allocator<nsRefPtr<imgCacheEntry> > > >, long, nsRefPtr<imgCacheEntry>, bool (*)(nsRefPtr<imgCacheEntry> const&, nsRefPtr<imgCacheEntry> const&)> () from /usr/local/lib/firefox3/libxul.so
#2 0x0000000805990149 in pthread_getprio () from /lib/libthr.so.3
#3 0x00007ffffcbe8000 in ?? ()
Error accessing memory address 0x7ffffcde8000: Bad address.
I can't tell if you have symbols for firefox, please install symbols for both libthr.so.3 and firefox3 (libxul.so)
Reporter | ||
Comment 4•14 years ago
|
||
how can i do this?
Reporter | ||
Comment 5•14 years ago
|
||
i rebuild /usr/ports/www/libxul
micro# make showconfig
===> The following configuration options are available for libxul-1.9.2.9_1:
DBUS=on "Enable D-BUS support"
JAVA=off "Enable JAVA xpcom"
DEBUG=on "Build a debugging image"
LOGGING=on "Enable additional log messages"
OPTIMIZED_CFLAGS=on "Enable some additional optimizations"
and rebuild /usr/src/lib/libthr
make DEBUG_FLAGS=-g && make intall clean
but backtrace don't change
Reporter | ||
Comment 6•14 years ago
|
||
i386 crash too
http://www.freebsd.org/gnome/docs/bugging.html says:
make WITH_DEBUG=yes install
Reporter | ||
Comment 8•14 years ago
|
||
i have DEBUG_FLAGS=-g in /etc/make.conf
Comment 9•14 years ago
|
||
Can you reproduce this with any video, or only the specific one you linked to? Can you try with both http://media.tinyvid.tv/3d198wqepg78m.ogg and http://flim.org/~kinetik/3d198wqepg78m_nosound.ogg and report the results?
Reporter | ||
Comment 10•14 years ago
|
||
http://media.tinyvid.tv/3d198wqepg78m.ogg <- crash
http://flim.org/~kinetik/3d198wqepg78m_nosound.ogg <- don't crash
Comment 11•14 years ago
|
||
If you're able to recompile, insert:
mAudioHandle = nsnull;
in this file: http://mxr.mozilla.org/mozilla1.9.2/source/content/media/nsAudioStream.cpp#101 like so:
96 if (sa_stream_open(static_cast<sa_stream_t*>(mAudioHandle)) != SA_SUCCESS) {
97 sa_stream_destroy(static_cast<sa_stream_t*>(mAudioHandle));
98 mAudioHandle = nsnull;
99 PR_LOG(gAudioStreamLog, PR_LOG_ERROR, ("nsAudioStream: sa_stream_open error"));
100 return;
101 }
mAudioHandle = nsnull;
102 }
And retest the first link I provided. If it no longer crashes, that pretty strongly suggests the crash is caused by the OSS sydneyaudio implementation found here: http://mxr.mozilla.org/mozilla1.9.2/source/media/libsydneyaudio/src/sydney_audio_oss.c
I'm not sure who maintains that, but at least if we can narrow the suspect code down to that file it'll be easier to find a solution to this.
Comment 12•14 years ago
|
||
Actually, it'd be better to return from Init() early just in case a re-init is causing the crash. Add the following lines after line 84:
mAudioHandle = nsnull;
return;
...like so:
80 void nsAudioStream::Init(PRInt32 aNumChannels, PRInt32 aRate, SampleFormat aFormat)
81 {
82 mRate = aRate;
83 mChannels = aNumChannels;
84 mFormat = aFormat;
mAudioHandle = nsnull;
return;
85 if (sa_stream_create_pcm(reinterpret_cast<sa_stream_t**>(&mAudioHandle),
86 NULL,
87 SA_MODE_WRONLY,
88 SA_PCM_FORMAT_S16_NE,
89 aRate,
90 aNumChannels) != SA_SUCCESS) {
Reporter | ||
Comment 13•14 years ago
|
||
ok, but after work, it's a few hour's
Reporter | ||
Comment 14•14 years ago
|
||
thx it work for me
Reporter | ||
Updated•14 years ago
|
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Reporter | ||
Comment 15•14 years ago
|
||
oy.. ff didn't crash but no sound
Status: RESOLVED → UNCONFIRMED
Resolution: FIXED → ---
Comment 16•14 years ago
|
||
Yeah, it's not a fix--just a way to narrow down where the problem lies. Thanks to your tests, it's almost definitely caused by a bug in sydney_audio_oss.c.
While looking for maintainers of that file to CC on this bug I found bug 562488, which is fixed on trunk but not on the 1.9.2 branch. Can you please apply the patch in that bug and report if it solves the problem (with working sound)?
Status: UNCONFIRMED → NEW
Ever confirmed: true
Severity: normal → critical
Keywords: crash
Summary: crash when trying to rewind video → crash using OSS when trying to rewind video
Reporter | ||
Comment 17•14 years ago
|
||
ff didn't crash but and sound no didn't work
Comment 18•14 years ago
|
||
Did you remove the changes I suggested in comment 12?
Reporter | ||
Comment 19•14 years ago
|
||
hmm no, one moment rebuild
Reporter | ||
Comment 20•14 years ago
|
||
yep, it's nice work, i will write to maintainers about this patch, thx
Status: NEW → RESOLVED
Closed: 14 years ago → 14 years ago
Resolution: --- → FIXED
Comment 21•14 years ago
|
||
Thanks for confirming! I'll mark this a duplicate.
Resolution: FIXED → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•