Closed Bug 1176147 Opened 9 years ago Closed 5 months ago

crash in CContext::CaptureStateImpl<T>(SAPIPipelineState*)

Categories

(Core :: Graphics, defect, P3)

All
Windows NT
defect

Tracking

()

RESOLVED WORKSFORME
Tracking Status
firefox47 --- affected
firefox48 --- affected
firefox49 --- affected
firefox-esr45 --- affected
firefox50 --- affected
firefox51 --- affected
firefox52 --- wontfix

People

(Reporter: MatsPalmgren_bugz, Unassigned)

References

Details

(Keywords: crash, Whiteboard: gfx-noted)

Crash Data

This bug was filed from the Socorro interface and is 
report bp-08563d4d-49b2-4b80-b234-237bd2150617.
=============================================================

High volume crash: 3138 crash reports in the last 7 days.
Top #36 in the 38.0.5 Top Crash list.

Operating System        Percentage    Number Of Crashes
Windows 7               99.87 %       3134
Windows Unknown         0.06 %           2
Windows 8.1             0.06 %           2 


Stack:

CContext::CaptureStateImpl<1>(SAPIPipelineState*)
CContext::PerformDelayedDeviceContextStateSwap()
NOutermost::CDevice::FlushDeletionPool(bool)
CContext::PerformAmortizedRenderOperations()
TOptImmediateContext::AcquireDevCtxIfaceNoSync()
CContext::ID3D11DeviceContext1_RSSetScissorRects_Amortized<1>(ID3D11DeviceContext1*, unsigned int, tagRECT const*)
CD3DRenderState::SetClipRect(D2D_RECT_U const*)
CD3DDeviceLevel1::ProcessDeferredOperations(CDeferredRenderingManager&)
CHwSurfaceRenderTarget::FlushQueuedOperations(FlushReason::Enum, float)
CDeferredRenderingManager::LockForNewPrimitive()
CHwSurfaceRenderTarget::GeneralFillPath(D2D1_ANTIALIAS_MODE, HwPipelineData*, IGeometryGenerator*, ColorSourceFastPath::Enum)
CHwSurfaceRenderTarget::FillTessellation_NoImageBrush(D2D1_ANTIALIAS_MODE, IGeometryGenerator*, FillTessellationData const*)
CHwSurfaceRenderTarget::FillTessellation(D2D1_ANTIALIAS_MODE, IGeometryGenerator*, FillTessellationData const*)
CHwSurfaceRenderTarget::DrawRectangle(D2D_RECT_F const&, BatchedBrush*, float, IStrokeStyleInternal*)
CCommand_DrawRectangle::Execute(ICommandTarget*)
BatchCommandWork::ExecuteConsumer()
PCChainManager::Execute(unsigned int)
CHwSurfaceRenderTarget::ProcessBatchImpl(ListElem<CBatchBase, null_type>*)
CHwSurfaceRenderTarget::ProcessBatch(FlushReason::Enum, ListElem<CBatchBase, null_type>*, unsigned __int64*, unsigned __int64*, long*, bool*)
CBatchSerializer::FlushInternal(FlushReason::Enum)
DrawingContext::FlushInternal(FlushReason::Enum)
DrawingContext::StartCommand<CCommand_PopClip>()
DrawingContext::Pop(SubTargetType::Enum)
D2DDeviceContextBase<ID2D1RenderTarget, ID2D1DeviceContext, ID2D1DeviceContext>::PopAxisAlignedClip()
mozilla::gfx::DrawTargetD2D1::PopClip()
gfxContext::Restore()
mozilla::FrameLayerBuilder::PaintItems(nsTArray<mozilla::FrameLayerBuilder::ClippedDisplayItem>&, nsIntRect const&, gfxContext*, nsRenderingContext*, nsDisplayListBuilder*, nsPresContext*, nsIntPoint const&, float, float, int)
mozilla::FrameLayerBuilder::DrawPaintedLayer(mozilla::layers::PaintedLayer*, gfxContext*, nsIntRegion const&, mozilla::layers::DrawRegionClip, nsIntRegion const&, void*)
mozilla::layers::ClientPaintedLayer::PaintThebes()
mozilla::layers::ClientPaintedLayer::RenderLayerWithReadback(mozilla::layers::ReadbackProcessor*)
mozilla::layers::ClientContainerLayer::RenderLayer()
mozilla::layers::ClientLayer::RenderLayerWithReadback(mozilla::layers::ReadbackProcessor*)
mozilla::layers::ClientContainerLayer::RenderLayer()
mozilla::layers::ClientLayerManager::EndTransactionInternal(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, nsIntRegion const&, mozilla::layers::DrawRegionClip, nsIntRegion const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags)
mozilla::layers::ClientLayerManager::EndTransaction(void (*)(mozilla::layers::PaintedLayer*, gfxContext*, nsIntRegion const&, mozilla::layers::DrawRegionClip, nsIntRegion const&, void*), void*, mozilla::layers::LayerManager::EndTransactionFlags)
nsDisplayList::PaintRoot(nsDisplayListBuilder*, nsRenderingContext*, unsigned int)
nsLayoutUtils::PaintFrame(nsRenderingContext*, nsIFrame*, nsRegion const&, unsigned int, unsigned int)
PresShell::Paint(nsView*, nsRegion const&, unsigned int)
Flags: needinfo?(bas)
Whiteboard: gfx-noted
D2D- D2D1.1- D2D1.1+ D2D+
it's nearly exclusively crashing on ati/amd graphics hardware
(In reply to philipp from comment #2)
> it's nearly exclusively crashing on ati/amd graphics hardware

Correct. Here are the actual correlations.

By Vendor
=========
0x1002 (AMD) 	2741 crashes 	99.42 %
0x10de (NVIDIA)    8 crashes 	 0.29 %
0x8086 (Intel)	   7 crashes 	 0.25 %

By Device
=========
0x9553 (AMD RV710)     391 crashes  14.18 %
0x9552 (AMD RV710)     334 crashes  12.11 %
0x954f (AMD RV710)     324 crashes  11.75 %
0x95c5 (AMD RV620)     243 crashes   8.81 %
0x9710 (AMD RS880)     231 crashes   8.38 %
0x9480 (AMD RV730)     224 crashes   8.12 %
0x95c4 (AMD RV620)     206 crashes   7.47 %
0x9591 (AMD RV635)     101 crashes   3.66 %
0x9616 (AMD RS780)     101 crashes   3.66 %
0x68b8 (AMD JUNIPER)    79 crashes   2.86 %

By Driver
=========
8.653.0.0 	904 crashes	32.98 %
8.640.0.0 	487 crashes	17.77 %
8.652.0.0 	350 crashes 	12.77 %
8.641.0.0 	164 crashes 	 5.98 %
8.641.1.1000 	134 crashes 	 4.89 %
8.650.0.0 	126 crashes 	 4.60 %
8.970.100.1100 	 99 crashes 	 3.61 % 
8.660.0.0 	 76 crashes 	 2.77 %
8.670.0.0 	 67 crashes 	 2.44 %
8.652.1.0 	 61 crashes 	 2.23 %

The majority of the drivers showing this bug are using drivers that are more than 5 years old. The latest driver version for legacy devices is 8.97.100.11 which only shows up in 3.61% of the crashes. Perhaps blacklisting old driver versions would help?
(In reply to Milan Sreckovic [:milan] from comment #1)
> D2D- D2D1.1- D2D1.1+ D2D+

This is a red herring, and is really D2D? D2D1.1? D2D1.1+ D2D+ (see bug 1196355.)

In the meantime, we're asking AMD, see if they can tell something from the stack.
Flags: needinfo?(bas)
This remains a significant issue but is no longer a "topcrash":
* Firefox 41 has 493 reports in the last week, accounting for 0.43% of all crashes, ranking #28
* Firefox 42 has 128 reports in the last week, accounting for 0.11% of all crashes, ranking #116
* Firefox 43 has only 5 reports in the last week
* Firefox 44 has only 4 reports in the last week

Milan, any news from AMD?
Keywords: topcrash
(In reply to Anthony Hughes, QA Mentor (:ashughes) from comment #5)
> This remains a significant issue but is no longer a "topcrash":
> * Firefox 41 has 493 reports in the last week, accounting for 0.43% of all
> crashes, ranking #28
> * Firefox 42 has 128 reports in the last week, accounting for 0.11% of all
> crashes, ranking #116
> * Firefox 43 has only 5 reports in the last week
> * Firefox 44 has only 4 reports in the last week
> 
> Milan, any news from AMD?

Nothing yet.
Crash Signature: [@ CContext::CaptureStateImpl<T>(SAPIPipelineState*)] → [@ CContext::CaptureStateImpl<T>(SAPIPipelineState*)] [@ CContext::CaptureStateImpl<T>]
Crash volume for signature 'CContext::CaptureStateImpl<T>':
 - nightly(version 50):34 crashes from 2016-06-06.
 - aurora (version 49):37 crashes from 2016-06-07.
 - beta   (version 48):448 crashes from 2016-06-06.
 - release(version 47):6272 crashes from 2016-05-31.
 - esr    (version 45):1358 crashes from 2016-04-07.

Crash volume on the last weeks:
            W. N-1  W. N-2  W. N-3  W. N-4  W. N-5  W. N-6  W. N-7
 - nightly      10       5       5       3       1       6       3
 - aurora        8       3       4       7       7       2       5
 - beta         55      63      58      66      57      68      55
 - release     780     738     812     868     900     918     907
 - esr         118     119     152     130     150     128     135

Affected platform: Windows
Crash volume for signature 'CContext::CaptureStateImpl<T>':
 - nightly (version 51): 31 crashes from 2016-08-01.
 - aurora  (version 50): 6 crashes from 2016-08-01.
 - beta    (version 49): 150 crashes from 2016-08-02.
 - release (version 48): 795 crashes from 2016-07-25.
 - esr     (version 45): 1604 crashes from 2016-05-02.

Crash volume on the last weeks (Week N is from 08-22 to 08-28):
            W. N-1  W. N-2  W. N-3
 - nightly      19       4       3
 - aurora        3       3       0
 - beta         38      54      23
 - release     269     212     131
 - esr         133     148     142

Affected platform: Windows

Crash rank on the last 7 days:
           Browser   Content     Plugin
 - nightly #86       #89
 - aurora            #247
 - beta    #330      #691
 - release #75       #25
 - esr     #72
Crash volume for signature 'CContext::CaptureStateImpl<T>':
 - nightly (version 52): 16 crashes from 2016-09-19.
 - aurora  (version 51): 5 crashes from 2016-09-19.
 - beta    (version 50): 60 crashes from 2016-09-20.
 - release (version 49): 893 crashes from 2016-09-05.
 - esr     (version 45): 2260 crashes from 2016-06-01.

Crash volume on the last weeks (Week N is from 10-03 to 10-09):
            W. N-1  W. N-2
 - nightly       9       7
 - aurora        3       2
 - beta         50      10
 - release     735     158
 - esr         167     160

Affected platform: Windows

Crash rank on the last 7 days:
           Browser   Content     Plugin
 - nightly #349      #108
 - aurora            #214
 - beta    #355      #237
 - release #101      #35
 - esr     #74
Blocks: 1126982
Too late for firefox 52, mass-wontfix.
QA Whiteboard: qa-not-actionable
Severity: critical → S2

Very low volume, all in 78. Decreasing severity -> S3.

Severity: S2 → S3
Crash Signature: [@ CContext::CaptureStateImpl<T>(SAPIPipelineState*)] [@ CContext::CaptureStateImpl<T>] → [@ CContext::CaptureStateImpl<T>] [@ CContext::CaptureStateImpl<T>]

Closing because no crashes reported for 12 weeks.

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