Open Bug 1843748 Opened 3 years ago Updated 2 years ago

Skia continuously logs "Creating null Skia image from null SourceSurface" warnings when idling on videolan.org

Categories

(Core :: Graphics: WebRender, defect)

Unspecified
macOS
defect

Tracking

()

Tracking Status
firefox117 --- affected

People

(Reporter: cpeterson, Unassigned)

References

(Blocks 1 open bug)

Details

While testing a debug Firefox build, I noticed that Skia continuously logs "Creating null Skia image from null SourceSurface" warnings (from https://searchfox.org/mozilla-central/rev/1cfd3a3bc76a8d09cb4266576f30802753a80c83/gfx/2d/DrawTargetSkia.cpp#245) while just idling on https://www.videolan.org/

Is that concerning or normal behavior? I don't notice any obvious performance slowdown on videolan.org, but it seems like Skia is busy doing nothing.

#01: mozilla::gfx::GetSkImageForSurface()
#02: mozilla::gfx::DrawTargetSkia::PushLayerWithBlend()
#03: mozilla::gfx::DrawTargetOffset::PushLayer()
#04: mozilla::gfx::RecordedPushLayer::PlayEvent()
#05: std::__1::__function::__func<mozilla::gfx::InlineTranslator::TranslateRecording()>::operator(
#06: bool mozilla::gfx::RecordedEvent::DoWithEvent<mozilla::gfx::InlineTranslator::TranslateRecording()::MemReader&, mozilla::gfx::RecordedEvent::EventType
#07: mozilla::gfx::InlineTranslator::TranslateRecording()
#08: wr_moz2d_render_cb
#09: objc::rc::autorelease::autoreleasepool::h8ed8cb85c8d49946
#10: webrender_bindings::moz2d_renderer::rasterize_blob::h6e3f24774532864b
#11: _$LT$core..iter..adapters..map..Map$LT$I$C$F$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$::fold::h2f14a3242c69e6d6
#12: alloc::vec::in_place_collect::_$LT$impl$u20$alloc..vec..spec_from_iter..SpecFromIter$LT$T$C$I$GT$$u20$for$u20$alloc..vec..Vec$LT$T$GT$$GT$::from_iter::ha668bdec7ee988e3
#13: _$LT$webrender_bindings..moz2d_renderer..Moz2dBlobRasterizer$u20$as$u20$webrender_api..image..AsyncBlobImageRasterizer$GT$::rasterize::ha7af74075cf2a26d
#14: webrender::scene_builder_thread::rasterize_blobs::h4fcf508b59eec9c9
#15: webrender::scene_builder_thread::LowPrioritySceneBuilderThread::process_transaction::hc647de98ab8fcf27
#16: _$LT$core..iter..adapters..map..Map$LT$I$C$F$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$::fold::h32a7eb0e5ba91829
#17: _$LT$alloc..vec..Vec$LT$T$GT$$u20$as$u20$alloc..vec..spec_from_iter..SpecFromIter$LT$T$C$I$GT$$GT$::from_iter::h5e4d8fdea666979b
#18: webrender::scene_builder_thread::LowPrioritySceneBuilderThread::run::hadf80a2be99df612
#19: std::sys_common::backtrace::__rust_begin_short_backtrace::he03dbf40675d2668
#20: _$LT$core..panic..unwind_safe..AssertUnwindSafe$LT$F$GT$$u20$as$u20$core..ops..function..FnOnce$LT$$LP$$RP$$GT$$GT$::call_once::h555873ec3e14490c
#21: std::panicking::try::he9312d5e48cda181
#22: std::panic::catch_unwind::h4e146e529e78e772
#23: core::ops::function::FnOnce::call_once$u7b$$u7b$vtable.shim$u7d$$u7d$::h2e891a84399d2f8d
#24: std::sys::unix::thread::Thread::new::thread_start::h7c145656763309f3
#25: _pthread_start

On Slack, Andrew Osmond said:

It appears that is expected. We do a PushLayerWithBlend explicitly with a null surface for blob images which this trace belongs: https://searchfox.org/mozilla-central/rev/2d06b7d5fbfa7a31776389da87c5f895b80df8d9/gfx/layers/wr/WebRenderCommandBuilder.cpp#987

But Jeff Muizelaar replied:

It’s not obvious that it should be happening. Maybe file a bug for further investigation?

We hit this PushLayer with null mask call in nsDisplayOpacity::Paint

https://searchfox.org/mozilla-central/rev/d35b3fe3d8230a255b988afb0ebda1176fc2f50b/layout/painting/nsDisplayList.cpp#4747

when painting an svg image (http://www.videolan.org/images/icons/ripple-loader.svg). This seems expected.

Severity: -- → S4
See Also: → 1812202
Blocks: wr-todos
You need to log in before you can comment on or make changes to this bug.