Closed Bug 804144 Opened 12 years ago Closed 12 years ago

startup crash in gfxContext::~gfxContext @ TextStageManager::AddStagesForSubrect with Intel HD graphics and driver versions 8.15.10.2141 and below

Categories

(Core :: Graphics, defect)

All
Windows 8
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla23
Tracking Status
firefox19 - ---

People

(Reporter: scoobidiver, Assigned: milan)

References

Details

(Keywords: crash, Whiteboard: [Win8][startupcrash])

Crash Data

Attachments

(1 file, 1 obsolete file)

Bug 711656 is back because there's no graphics blocklist for Intel GPUs on Windows 8. The one for Windows 7 should be reused for Windows 8. Signature malloc | TextStageManager::AddStagesForSubrect(IDWritePrivateGlyphRunAnalysis*, SubRectInfo const*) More Reports Search UUID 2b61b78e-4ca6-4a06-8ff7-a26012121022 Date Processed 2012-10-22 13:23:06 Uptime 2 Last Crash 1.3 minutes before submission Install Age 2.0 minutes since version was first installed. Install Time 2012-10-22 13:17:57 Product Firefox Version 19.0a1 Build ID 20121021115746 Release Channel nightly OS Windows NT OS Version 6.2.9200 Build Architecture x86 Build Architecture Info GenuineIntel family 6 model 37 stepping 2 Crash Reason EXCEPTION_ACCESS_VIOLATION_WRITE Crash Address 0x1 App Notes AdapterVendorID: 0x8086, AdapterDeviceID: 0x0046, AdapterSubsysID: 17021043, AdapterDriverVersion: 8.15.10.2125 D2D? D2D+ DWrite? DWrite+ D3D10 Layers? D3D10 Layers+ EMCheckCompatibility True Adapter Vendor ID 0x8086 Adapter Device ID 0x0046 Total Virtual Memory 2147352576 Available Virtual Memory 1845800960 System Memory Use Percentage 73 Available Page File 3144462336 Available Physical Memory 524791808 Frame Module Signature Source 0 msvcrt.dll malloc 1 d2d1.dll TextStageManager::AddStagesForSubrect 2 d2d1.dll GlyphRunRenderer::IssueRenderingCommands 3 d2d1.dll CHwSurfaceRenderTarget::DrawGlyphRun 4 d2d1.dll CCommand_DrawGlyphRunAnalysis::Execute 5 d2d1.dll _allrem 6 d2d1.dll DrawingContext::Flush 7 d2d1.dll D2DDeviceContextBase<ID2D1DCRenderTarget,ID2D1DCRenderTarget,ID2D1DeviceContext> 8 gkmedias.dll mozilla::gfx::DrawTargetD2D::Flush gfx/2d/DrawTargetD2D.cpp:235 9 xul.dll gfxContext::~gfxContext gfx/thebes/gfxContext.cpp:127 10 xul.dll gfxContext::Release obj-firefox/dist/include/gfxContext.h:42 11 xul.dll nsRefPtr<gfxContext>::~nsRefPtr<gfxContext> obj-firefox/dist/include/nsAutoPtr.h:874 12 xul.dll mozilla::layers::ThebesLayerD3D10::DrawRegion gfx/layers/d3d10/ThebesLayerD3D10.cpp:452 13 xul.dll mozilla::layers::ThebesLayerD3D10::Validate gfx/layers/d3d10/ThebesLayerD3D10.cpp:245 14 xul.dll mozilla::layers::ContainerLayerD3D10::Validate gfx/layers/d3d10/ContainerLayerD3D10.cpp:413 15 xul.dll mozilla::layers::LayerManagerD3D10::Render gfx/layers/d3d10/LayerManagerD3D10.cpp:723 16 xul.dll mozilla::layers::LayerManagerD3D10::EndTransaction gfx/layers/d3d10/LayerManagerD3D10.cpp:381 17 xul.dll nsDisplayList::PaintForFrame layout/base/nsDisplayList.cpp:1107 18 xul.dll nsLayoutUtils::PaintFrame layout/base/nsLayoutUtils.cpp:1853 19 xul.dll PresShell::Paint layout/base/nsPresShell.cpp:5338 20 xul.dll nsViewManager::ProcessPendingUpdatesForView view/src/nsViewManager.cpp:436 21 xul.dll nsViewManager::ProcessPendingUpdates view/src/nsViewManager.cpp:1213 22 xul.dll nsRefreshDriver::Notify layout/base/nsRefreshDriver.cpp:431 23 xul.dll nsTimerImpl::Fire xpcom/threads/nsTimerImpl.cpp:475 24 xul.dll nsTimerEvent::Run xpcom/threads/nsTimerImpl.cpp:555 25 xul.dll nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:612 26 xul.dll mozilla::ipc::MessagePump::Run ipc/glue/MessagePump.cpp:117 27 xul.dll MessageLoop::RunHandler ipc/chromium/src/base/message_loop.cc:208 28 xul.dll MessageLoop::Run ipc/chromium/src/base/message_loop.cc:182 29 xul.dll nsBaseAppShell::Run widget/xpwidgets/nsBaseAppShell.cpp:163 30 xul.dll nsAppShell::Run widget/windows/nsAppShell.cpp:232 31 xul.dll nsAppStartup::Run toolkit/components/startup/nsAppStartup.cpp:290 32 xul.dll XREMain::XRE_mainRun toolkit/xre/nsAppRunner.cpp:3799 33 xul.dll XREMain::XRE_main toolkit/xre/nsAppRunner.cpp:3866 34 xul.dll XRE_main toolkit/xre/nsAppRunner.cpp:3941 More reports at: https://crash-stats.mozilla.com/report/list?signature=malloc+|+TextStageManager%3A%3AAddStagesForSubrect%28IDWritePrivateGlyphRunAnalysis*%2C+SubRectInfo+const*%29
Crash Signature: [@ malloc | TextStageManager::AddStagesForSubrect(IDWritePrivateGlyphRunAnalysis*, SubRectInfo const*)] → [@ malloc | TextStageManager::AddStagesForSubrect(IDWritePrivateGlyphRunAnalysis*, SubRectInfo const*)] [@ _VEC_memzero | TextStageManager::MapTextureTransferSurface(D2D_RECT_U const&, unsigned char** unsigned int*)] [@ memset | TextStageManager::MapTex…
Hardware: x86 → All
Blocks: 605779
Now that Win8 has been announced, we don't need to be concerned about crashes that only occur ~16 times in a day. We'll focus on this bug (track it) when it becomes a more prevalent issue in our user population. CC'ing more people from the gfx team, since we can still fix in an upcoming version without this bug being tracked. Sounds like a minor modification to Bug 711656.
Oh. Bug 711656. Epic. Indeed, just like in bug 711656, the crash occurs in a driver version, 8.15.10.2125, that is in principle blacklisted. And the AppNotes annotations that we now have show that the user did not force-enable (or else we would see a ! instead of a ? after the feature name: "D2D!") Please, do ping me if I forget to look into this early next week. If anyone else wants to take this (you're welcome) take a look at the comments in bug 711656. That one turned out to be caused by a change in gfxInfo symbolic constants values, that caused a cached blacklisting decision to become mis-interpreted as a non-blacklisting.
(In reply to Scoobidiver from comment #0) > Bug 711656 is back because there's no graphics blocklist for Intel GPUs on > Windows 8. > The one for Windows 7 should be reused for Windows 8. Dang! Thanks for this, you're of course right. Good, at least it's an easy fix. Want to do it? It's going to happen around widget/windows/GfxInfo.*. Maybe also widget/xpwidget/GfxInfo*
(In reply to Benoit Jacob [:bjacob] from comment #5) > Want to do it? No, thanks.
Any news on the easy implementation of this?
Blocks: 863683
I've seen bug 863683 and looked back at this, but I'm trying very hard *not* to be the only one person in Mozilla to edit the blocklists. I believe that this should be assigned to someone, but please pick someone else. I'm happy to explain code, old bugs, and answer questions.
Flags: needinfo?(milan)
Assignee: nobody → milan
I'll sort this out.
Flags: needinfo?(milan)
I think you should comply with the Windows 7 case where the threshold is 8.15.10.2302. It will fix bug 863683, a kind of bug 806786 for Windows 8.
On Scoobidiver's suggestion, go to 2302, hopefully fixing bug 863683 as well.
Attachment #744797 - Attachment is obsolete: true
Attachment #744797 - Flags: feedback?(bjacob)
Attachment #744830 - Flags: review?(bjacob)
Attachment #744830 - Flags: review?(bjacob) → review+
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla23
I've updated https://wiki.mozilla.org/Blocklisting/Blocked_Graphics_Drivers#Intel_cards accordingly. It should have been done by the assignee.
(In reply to Scoobidiver from comment #15) > I've updated > https://wiki.mozilla.org/Blocklisting/Blocked_Graphics_Drivers#Intel_cards > accordingly. It should have been done by the assignee. Thanks! The assignee just learned something.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: