Closed
Bug 577645
Opened 14 years ago
Closed 14 years ago
youtube.com - Firefox 4 Crash HTML5 WebM [@ FastConvertYUVToRGB32Row ] Pentium 2 class using Pentium 3+ class instruction MOVNTQ
Categories
(Core :: Audio/Video, defect)
Tracking
()
RESOLVED
FIXED
Tracking | Status | |
---|---|---|
blocking2.0 | --- | final+ |
People
(Reporter: morid_rhosard, Assigned: kinetik)
References
()
Details
Attachments
(1 file, 2 obsolete files)
(deleted),
patch
|
derf
:
review+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.3a6pre) Gecko/20100618 Minefield/3.7a6pre
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.3a6pre) Gecko/20100618 Minefield/3.7a6pre
Firefox 4 crash every time when YouTube is loading a video with WebM support.
Reproducible: Always
Steps to Reproduce:
1.Got to http://www.youtube.com/html5 and enable HTML5
2.Open a video that supports WebM such as http://www.youtube.com/watch?v=rLxQiI8c1Bs
3.Firefox crashes
bp-90dfc2b3-4eae-4f8b-bc2f-069872100709
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago
Resolution: --- → DUPLICATE
http://asm.inightmare.org/opcodelst/index.php?op=MOVNTQ
Opcode MOVNTQ
CPU: Pentium III+ (KNI/MMX2), AMD Athlon (AMD EMMX)
Type of instruction: User
Instruction: MOVNTQ dest,src
http://support.microsoft.com/kb/216204
Intel Celeron Intel, x86 Family 6 Model 5
Blocks: 573590
Status: RESOLVED → REOPENED
Component: General → Video/Audio
Ever confirmed: true
Product: Firefox → Core
QA Contact: general → video.audio
Resolution: DUPLICATE → ---
Summary: youtube.com - Firefox 4 Crash HTML5 WebM [@ FastConvertYUVToRGB32Row ] → youtube.com - Firefox 4 Crash HTML5 WebM [@ FastConvertYUVToRGB32Row ] Pentium 2 class using Pentium 3+ class instruction MOVNTQ
Version: unspecified → Trunk
Assignee | ||
Comment 3•14 years ago
|
||
Carlo's CPU is "GenuineIntel family 6 model 5 stepping 3", which seems to be a Deschutes era Pentium 2. As timeless points out, movntq is EMMX/MMX2. There is CPU detection present here: http://mxr.mozilla.org/mozilla-central/source/gfx/ycbcr/yuv_convert.cpp#46 but it's incorrectly testing for MMX.
Options are:
- fix the detection and fall back to C code for this CPU
- make the asm pure MMX (may hurt performance)
- fork the asm into pure MMX and the current case (MMX2)
The first option is my preference.
No longer blocks: 573590
Reporter | ||
Comment 4•14 years ago
|
||
It is Pentium II 400Mhz (Deschutes), by the way.
Assignee | ||
Comment 5•14 years ago
|
||
Correcting terminology: movntq is part of SSE, so anything that implements SSE has movntq. AMD also introduced movntq as part of "enhanced 3DNow!" before the complete implementation of SSE, which is where the confusing "EMMX/MMX2" terminology arises.
The point of this is that changing the CPU capability test to SSE would be be sufficient to allow fallback in any problematic cases, but would exclude the set of AMD CPUs that have movntq but not SSE (this includes a bunch of relatively fast Athlon CPUs). I'm not sure if this actually matters, so I'm taking the easiest path here and just adding a test for SSE.
Attachment #456700 -
Flags: review?(tterribe)
Assignee | ||
Comment 6•14 years ago
|
||
Without unrelated changes.
Attachment #456700 -
Attachment is obsolete: true
Attachment #456701 -
Flags: review?(tterribe)
Attachment #456700 -
Flags: review?(tterribe)
Comment 7•14 years ago
|
||
Comment on attachment 456701 [details] [diff] [review]
patch v0.1
I disagree that the easiest way is best here, but we would need testers with the appropriate hardware to test a change that added a new supports_mmxext() or similar. The actual code for such a function would be relatively simple. Anyone out there willing to test, please file a new bug to volunteer (if no one does, then I was wrong about it being important).
The actual changes here look fine, but convert.patch and yv24.patch also need to be updated. picture_region.patch and remove_scale.patch will also no longer apply cleanly without updates.
Attachment #456701 -
Flags: review?(tterribe) → review-
Assignee | ||
Comment 8•14 years ago
|
||
No need to update the existing patches, this one just needs to be stacked on top correctly. Includes standalone patch and update.sh changes. Actual code changes are identical to the previous version of the patch.
Attachment #456701 -
Attachment is obsolete: true
Attachment #461985 -
Flags: review?(tterribe)
Assignee | ||
Comment 9•14 years ago
|
||
Requesting blocking2.0 as this is a crasher regression on older CPUs.
Status: NEW → ASSIGNED
blocking2.0: --- → ?
Updated•14 years ago
|
Attachment #461985 -
Flags: review?(tterribe) → review+
blocking2.0: ? → final+
Assignee | ||
Comment 10•14 years ago
|
||
Even with this fixed, we're probably going to hit http://code.google.com/p/webm/issues/detail?id=136 so I filed bug 584253 to fix that.
Assignee | ||
Updated•14 years ago
|
Keywords: checkin-needed
Whiteboard: [needs landing]
Reporter | ||
Comment 11•14 years ago
|
||
Is it on trunk? I getting it, yet.
Mozilla/5.0 (Windows; Windows NT 5.1; rv:2.0b3pre) Gecko/20100803 Minefield/4.0b3pre
bp-6b17f639-db7a-49bc-af6d-1a4022100804
Comment 12•14 years ago
|
||
no. please read https://bugzilla.mozilla.org/page.cgi?id=fields.html#status
the bug is: ASSIGNED and has [needs landing] and checkin-needed...
Assignee | ||
Comment 13•14 years ago
|
||
http://hg.mozilla.org/mozilla-central/rev/5fa88be4c401
Carlos, please try tomorrow's nightly build. It may still crash due to bug 584253, but this one should be fixed.
Status: ASSIGNED → RESOLVED
Closed: 14 years ago → 14 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Whiteboard: [needs landing]
You need to log in
before you can comment on or make changes to this bug.
Description
•