Closed Bug 858667 Opened 12 years ago Closed 4 years ago

[Win7] crash in mozilla::wmf::MFTEnumEx @ EnumSoftwareMFTs

Categories

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

21 Branch
All
Windows 7
defect
Not set
critical

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox20 --- unaffected
firefox21 --- affected
firefox22 --- affected
firefox23 --- affected
firefox24 --- affected

People

(Reporter: scoobidiver, Unassigned)

References

Details

(Keywords: crash, regression)

Crash Data

It first showed up in 21.0a1/20130219 but is discontinuous across builds. Signature EnumSoftwareMFTs(_GUID const&, unsigned int, __MIDL___MIDL_itf_mfobjects_0000_0006_0003 const*, __MIDL___MIDL_itf_mfobjects_0000_0006_0003 const*, IMFActivate***, unsigned int*) More Reports Search UUID 99ce5855-c642-4587-a529-272342130405 Date Processed 2013-04-05 15:29:48 Uptime 44 Last Crash 51.0 minutes before submission Install Age 2.9 hours since version was first installed. Install Time 2013-04-05 12:38:32 Product Firefox Version 21.0 Build ID 20130401192816 Release Channel beta OS Windows NT OS Version 6.1.7601 Service Pack 1 Build Architecture x86 Build Architecture Info GenuineIntel family 15 model 4 stepping 7 Crash Reason EXCEPTION_ACCESS_VIOLATION_READ Crash Address 0x0 App Notes AdapterVendorID: 0x8086, AdapterDeviceID: 0x29c2, AdapterSubsysID: 26831019, AdapterDriverVersion: 8.15.10.1930 D3D10 Layers? D3D10 Layers- D3D9 Layers? D3D9 Layers- Processor Notes sp-processor05.phx1.mozilla.com_7664:2008 EMCheckCompatibility True Adapter Vendor ID 0x8086 Adapter Device ID 0x29c2 Total Virtual Memory 2147352576 Available Virtual Memory 1728937984 System Memory Use Percentage 57 Available Page File 1540542464 Available Physical Memory 899244032 Frame Module Signature Source 0 mfplat.dll EnumSoftwareMFTs 1 mfplat.dll MFTEnumEx 2 xul.dll mozilla::wmf::MFTEnumEx content/media/wmf/WMFUtils.cpp:503 3 xul.dll mozilla::wmf::DisableBlockedDecoders content/media/wmf/WMFUtils.cpp:261 4 xul.dll mozilla::wmf::DisableBlockedDecoders content/media/wmf/WMFUtils.cpp:275 5 xul.dll mozilla::wmf::LoadDLLs content/media/wmf/WMFUtils.cpp:326 6 xul.dll mozilla::WMFDecoder::LoadDLLs content/media/wmf/WMFDecoder.cpp:80 7 xul.dll mozilla::WMFDecoder::GetSupportedCodecs content/media/wmf/WMFDecoder.cpp:26 8 xul.dll mozilla::DecoderTraits::CanHandleMediaType content/media/DecoderTraits.cpp:323 9 xul.dll nsHTMLMediaElement::GetCanPlay content/html/content/src/nsHTMLMediaElement.cpp:2170 10 xul.dll nsHTMLMediaElement::CanPlayType content/html/content/src/nsHTMLMediaElement.cpp:2176 11 xul.dll NS_InvokeByIndex_P xpcom/reflect/xptcall/src/md/win32/xptcinvoke.cpp:70 12 xul.dll XPC_WN_CallMethod js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1417 13 mozjs.dll js::InvokeKernel js/src/jsinterp.cpp:367 14 mozjs.dll js::Interpret js/src/jsinterp.cpp:2344 15 mozjs.dll js::RunScript js/src/jsinterp.cpp:324 16 mozjs.dll UncachedInlineCall js/src/methodjit/InvokeHelpers.cpp:397 17 mozjs.dll js::mjit::stubs::UncachedCallHelper js/src/methodjit/InvokeHelpers.cpp:492 18 mozjs.dll js::mjit::stubs::UncachedLoweredCall js/src/methodjit/InvokeHelpers.cpp:451 19 mozjs.dll js::mjit::stubs::CompileFunction js/src/methodjit/InvokeHelpers.cpp:275 20 @0x4f6c5f5 More reports at: https://crash-stats.mozilla.com/report/list?signature=EnumSoftwareMFTs%28_GUID+const%26%2C+unsigned+int%2C+__MIDL___MIDL_itf_mfobjects_0000_0006_0003+const*%2C+__MIDL___MIDL_itf_mfobjects_0000_0006_0003+const*%2C+IMFActivate***%2C+unsigned+int*%29
firefox 22 seems to be affected as well - it's probably related the windows media foundation backend which was turned on in firefox 21 by default (bug 837859). also see this support forum thread: https://support.mozilla.org/en-US/questions/959432
Look like Chrome has a similar crash, but they're crashing in EnumHardwareMFTs rather than EnumSoftwareMFTs. http://code.google.com/p/chromium/issues/detail?id=178490 Scoobbidiver: Are there any correlations we can get here to get more data? How common is this crash?
(In reply to Chris Pearce (:cpearce) from comment #2) > Scoobbidiver: Are there any correlations we can get here to get more data? Blocked by bug 867342. > How common is this crash? #67 in 21.0 and #204 in 22.0b1.
A user with this crash signature and crash id including:bp-71697f5d-41d4-48ae-9db9-3e6302130607 has reported in Sumo that toggling the media.windows-media-foundation.enabled pref to false solves this problem: https://support.mozilla.org/en-US/questions/961471
(In reply to Scoobidiver from comment #3) > (In reply to Chris Pearce (:cpearce) from comment #2) > > Scoobbidiver: Are there any correlations we can get here to get more data? > Blocked by bug 867342. Here they are: 100% (27/27) vs. 21% (21784/101357) mfreadwrite.dll 11% (3/27) vs. 2% (2060/101357) 12.0.7600.16385 22% (6/27) vs. 2% (2307/101357) 12.0.7600.16597 67% (18/27) vs. 15% (15371/101357) 12.0.7601.17514 100% (27/27) vs. 22% (21821/101357) mf.dll 11% (3/27) vs. 2% (2049/101357) 12.0.7600.16385 22% (6/27) vs. 2% (2296/101357) 12.0.7600.16597 67% (18/27) vs. 15% (15615/101357) 12.0.7601.17514 100% (27/27) vs. 22% (22005/101357) mfplat.dll 100% (27/27) vs. 20% (20285/101357) 12.0.7600.16385 100% (27/27) vs. 25% (25122/101357) ksuser.dll 100% (27/27) vs. 21% (21051/101357) 6.1.7600.16385
Summary: crash in mozilla::wmf::MFTEnumEx @ EnumSoftwareMFTs → [Win7] crash in mozilla::wmf::MFTEnumEx @ EnumSoftwareMFTs
I reported the issue to MS here: https://connect.microsoft.com/VisualStudio/feedback/details/789787/mftenumex-crashes-in-firefox-and-chrome I'm not sure that's the right mechanism for reporting bugs in WMF, but it's all I could find. I note that there are no crashes on Windows 8, maybe this was fixed in Windows 8 and a fix was not back ported to Windows 7...
(In reply to Chris Pearce (:cpearce) from comment #6) > I reported the issue to MS here: > https://connect.microsoft.com/VisualStudio/feedback/details/789787/mftenumex- > crashes-in-firefox-and-chrome This bounced, it's the wrong mechanism for reporting bugs. I was referred to the WMF forums, no replies there yet. I think we can work around this by implementing an IClassFactory and registering that (via MFTRegisterLocal) as the creator of all decoders, and then refusing to create everything except the decoders we want. That way we don't need to use MFTEnumEx to iterate over all decoders, disabling those that we don't want. This won't work on Vista, but we can't use IPluginControl on Vista to disable decoders either, since it's not available there either.
(In reply to Chris Pearce (:cpearce) from comment #7) > I think we can work around this by implementing an IClassFactory and > registering that (via MFTRegisterLocal) as the creator of all decoders This won't work, as we must specify exactly which decoder we're registering the class factory for in MFTRegisterLocal. :(
Component: Audio/Video → Audio/Video: Playback
Crash Signature: [@ EnumSoftwareMFTs(_GUID const&, unsigned int, __MIDL___MIDL_itf_mfobjects_0000_0006_0003 const*, __MIDL___MIDL_itf_mfobjects_0000_0006_0003 const*, IMFActivate***, unsigned int*)] → [@ EnumSoftwareMFTs(_GUID const&, unsigned int, __MIDL___MIDL_itf_mfobjects_0000_0006_0003 const*, __MIDL___MIDL_itf_mfobjects_0000_0006_0003 const*, IMFActivate***, unsigned int*)] [@ EnumSoftwareMFTs]

Closing because no crashes reported for 12 weeks.

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.