Open Bug 1902271 Opened 8 months ago Updated 8 months ago

Factory::CreateBGRA8DataSourceSurfaceForD3D11Texture() caused to block Renderer thread

Categories

(Core :: Graphics, defect)

defect

Tracking

()

People

(Reporter: sotaro, Unassigned)

References

Details

D3D11TextureIMFSampleImage::GetAsSourceSurface() or D3D11ShareHandleImage::GetAsSourceSurface() are called during taking screen shot or video rendering to canvas2d.
In the functions, Factory::CreateBGRA8DataSourceSurfaceForD3D11Texture() is called. It caused to block Renderer thread during mozilla::gfx::Factory::ReadbackTexture().

https://share.firefox.dev/3XlUo7J

Blocks: 1889275
Assignee: nobody → sotaro.ikeda.g
Assignee: sotaro.ikeda.g → nobody

It seemed that we do not have a good way to prevent readback in D3D11TextureIMFSampleImage::GetAsSourceSurface(). Then it seems better to reduce the GetAsSourceSurface() call for now like Bug 1889275.

No longer blocks: 1889275
Depends on: 1889275
Summary: D3D11TextureIMFSampleImage::GetAsSourceSurface() caused to block Renderer thread → Factory::CreateBGRA8DataSourceSurfaceForD3D11Texture() caused to block Renderer thread

The severity field is not set for this bug.
:bhood, could you have a look please?

For more information, please visit BugBot documentation.

Flags: needinfo?(bhood)
Severity: -- → S3
Flags: needinfo?(bhood)
You need to log in before you can comment on or make changes to this bug.