Граф коммитов

2253 Коммитов

Автор SHA1 Сообщение Дата
Randell Jesup fcaf70841e Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 18:47:08 +00:00
Noemi Erli 2390d257e6 Backed out changeset 12a59e5a50bf (bug 1207753) for causing build bustage CLOSED TREE 2022-03-16 18:32:51 +02:00
Randell Jesup 4b033a5256 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 16:16:14 +00:00
Butkovits Atila 927ad62c6a Backed out changeset a68ee4b09f92 (bug 1207753) for causing Hazard bustages. CLOSED TREE 2022-03-16 14:38:14 +02:00
Randell Jesup 7d4b5fae04 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 12:01:14 +00:00
Lee Salzman 6f0be8c19f Bug 1757067 - Explicitly specify chroma subsampling scheme for YCbCr data. r=jgilbert,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D139656
2022-03-10 09:24:15 +00:00
smolnar 97f77f8381 Backed out changeset 36c6350bc7d1 (bug 1757067) for causing build bustages in gfx/gl/GLBlitHelperD3D.cpp CLOSED TREE 2022-03-10 10:10:10 +02:00
Lee Salzman a664a6d305 Bug 1757067 - Explicitly specify chroma subsampling scheme for YCbCr data. r=jgilbert,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D139656
2022-03-10 07:48:53 +00:00
sotaro 1145ad3b4c Bug 1757123 - Remove BufferTextureData::RestoreOriginalDescriptor() r=gfx-reviewers,jrmuizel
RestoreOriginalDescriptor() is not used since Bug 1750858 fix.

Differential Revision: https://phabricator.services.mozilla.com/D139678
2022-02-25 08:26:43 +00:00
Lee Salzman 9ff6a3947e Bug 1750858 - Respect mPicSize in WebRender. r=sotaro
This makes WR properly handle mPicSize when RenderBufferTextureHost is used.
The main change is that we need to take care to pass in display().Size() from
the descriptor, and then further use that to carefully limit the size of the
CbCr texture, as it doesn't necessarily maintain an appropriate half-sized
scale with respect to the Y texture if it is padded.

Given that mPicSize should now actually work, we should no longer need any
of the previous mCroppedSize mechanisms that were added to work around this,
and so they are removed in this patch.

Differential Revision: https://phabricator.services.mozilla.com/D139267
2022-02-22 17:56:30 +00:00
sotaro 8967cd0a71 Bug 1753575 - Make BufferTextureData of ffmpeg decoded video recycled again r=gfx-reviewers,nical
Before Bug 1713276  fix, BufferTextureData of ffmpeg decoded video was recycled.
ShmemTextureData::CropYCbCrPlanes() changed BufferDescriptor. And it blocks the BufferTextureData to be recycled. The BufferDescriptor needs to be restored to original value before recycling.

Differential Revision: https://phabricator.services.mozilla.com/D137829
2022-02-07 23:15:25 +00:00
Nika Layzell 09d88e5fd2 Bug 1749059 - Remove Quantum DOM support from IPDL, r=ipc-reviewers,mccr8
This is no longer necessary as the Quantum DOM project is no longer
happening, and removing support simplifies various components inside of
IPDL.

As some code used the support to get a `nsISerialEventTarget` for an
actor's worker thread, that method was replaced with a method which
instead pulls the nsISerialEventTarget from the MessageChannel and
should work on all actors.

Differential Revision: https://phabricator.services.mozilla.com/D135411
2022-01-25 20:29:46 +00:00
alwu 72bf19ec27 Bug 1713276 - part1 : allocate shmem for ffmpeg to store decoded data directly. r=stransky,gfx-reviewers,sotaro,jgilbert,media-playback-reviewers
This implements a customized buffer allocator for ffmpeg decoder to allow it to store decoded data on shmem, so decoded data can be shared with the compositor process without doing extra copy.

As ffmpeg decoder needs a special alignment which will be larger than the actual image, we would need to crop the planes by telling plane descriptor correct place size in order to display image correctly.

Otherwise, showing a larger image causes visible incorrect border on the right and bottom of the actual image.

This will help improve the performance of software decoding while using ffmpeg and ffvpx, which is about h264 and vpx on Linux, vpx on Windows and MacOS.

Inaddition, Here is a result [1] showing that how much improvement using shmem can help.

[1] https://bit.ly/3dy4rya

Differential Revision: https://phabricator.services.mozilla.com/D130220
2022-01-25 02:44:59 +00:00
Butkovits Atila ea3ded4926 Backed out 5 changesets (bug 1713276) for causing reftest failures at color_quads/720p.png.bt709.bt709.pc.yuv420p10.vp9.webm. CLOSED TREE
Backed out changeset 9ac49fde0e53 (bug 1713276)
Backed out changeset 21a1cb173d50 (bug 1713276)
Backed out changeset d8e319535a01 (bug 1713276)
Backed out changeset 0a1be4875045 (bug 1713276)
Backed out changeset b2676297c6ff (bug 1713276)
2022-01-22 23:14:05 +02:00
alwu aa9cadb959 Bug 1713276 - part1 : allocate shmem for ffmpeg to store decoded data directly. r=stransky,gfx-reviewers,sotaro,jgilbert,media-playback-reviewers
This implements a customized buffer allocator for ffmpeg decoder to allow it to store decoded data on shmem, so decoded data can be shared with the compositor process without doing extra copy.

As ffmpeg decoder needs a special alignment which will be larger than the actual image, we would need to crop the planes by telling plane descriptor correct place size in order to display image correctly.

Otherwise, showing a larger image causes visible incorrect border on the right and bottom of the actual image.

This will help improve the performance of software decoding while using ffmpeg and ffvpx, which is about h264 and vpx on Linux, vpx on Windows and MacOS.

Inaddition, Here is a result [1] showing that how much improvement using shmem can help.

[1] https://bit.ly/3dy4rya

Differential Revision: https://phabricator.services.mozilla.com/D130220
2022-01-22 17:25:22 +00:00
Cristian Tuns f052d70b9b Backed out 4 changesets (bug 1713276) on suspicion of causing wpt failure in canvas + video test CLOSED TREE
Backed out changeset f4ca14151598 (bug 1713276)
Backed out changeset 52fdcd1dc5ed (bug 1713276)
Backed out changeset 5503198fc6b2 (bug 1713276)
Backed out changeset 002c71e3c3f7 (bug 1713276)
2022-01-21 04:26:22 -05:00
alwu 934e7d940f Bug 1713276 - part1 : allocate shmem for ffmpeg to store decoded data directly. r=stransky,gfx-reviewers,sotaro,jgilbert,media-playback-reviewers
This implements a customized buffer allocator for ffmpeg decoder to allow it to store decoded data on shmem, so decoded data can be shared with the compositor process without doing extra copy.

As ffmpeg decoder needs a special alignment which will be larger than the actual image, we would need to crop the planes by telling plane descriptor correct place size in order to display image correctly.

Otherwise, showing a larger image causes visible incorrect border on the right and bottom of the actual image.

This will help improve the performance of software decoding while using ffmpeg and ffvpx, which is about h264 and vpx on Linux, vpx on Windows and MacOS.

Inaddition, Here is a result [1] showing that how much improvement using shmem can help.

[1] https://bit.ly/3dy4rya

Differential Revision: https://phabricator.services.mozilla.com/D130220
2022-01-20 23:53:10 +00:00
Norisz Fay e3d44fc872 Backed out 4 changesets (bug 1713276) for causing build bustage and wpt failures CLOSED TREE
Backed out changeset cee073e045a3 (bug 1713276)
Backed out changeset 9a47b267032e (bug 1713276)
Backed out changeset 3d88e393a0cb (bug 1713276)
Backed out changeset f8814abefa20 (bug 1713276)
2022-01-20 11:39:56 +02:00
alwu aafce17c4e Bug 1713276 - part1 : allocate shmem for ffmpeg to store decoded data directly. r=stransky,gfx-reviewers,sotaro,jgilbert,media-playback-reviewers
This implements a customized buffer allocator for ffmpeg decoder to allow it to store decoded data on shmem, so decoded data can be shared with the compositor process without doing extra copy.

As ffmpeg decoder needs a special alignment which will be larger than the actual image, we would need to crop the planes by telling plane descriptor correct place size in order to display image correctly.

Otherwise, showing a larger image causes visible incorrect border on the right and bottom of the actual image.

This will help improve the performance of software decoding while using ffmpeg and ffvpx, which is about h264 and vpx on Linux, vpx on Windows and MacOS.

Inaddition, Here is a result [1] showing that how much improvement using shmem can help.

[1] https://bit.ly/3dy4rya

Differential Revision: https://phabricator.services.mozilla.com/D130220
2022-01-20 05:50:54 +00:00
Narcis Beleuzu c88b1a661d Backed out 4 changesets (bug 1713276) for bustages on FFmpegVideoDecoder.cpp . CLOSED TREE
Backed out changeset 12a9f3fad481 (bug 1713276)
Backed out changeset cdc8216b3f18 (bug 1713276)
Backed out changeset b23498172031 (bug 1713276)
Backed out changeset 13ce7037ff27 (bug 1713276)
2022-01-20 07:26:12 +02:00
alwu 121cc7eb19 Bug 1713276 - part1 : allocate shmem for ffmpeg to store decoded data directly. r=stransky,gfx-reviewers,sotaro,jgilbert,media-playback-reviewers
This implements a customized buffer allocator for ffmpeg decoder to allow it to store decoded data on shmem, so decoded data can be shared with the compositor process without doing extra copy.

As ffmpeg decoder needs a special alignment which will be larger than the actual image, we would need to crop the planes by telling plane descriptor correct place size in order to display image correctly.

Otherwise, showing a larger image causes visible incorrect border on the right and bottom of the actual image.

This will help improve the performance of software decoding while using ffmpeg and ffvpx, which is about h264 and vpx on Linux, vpx on Windows and MacOS.

Inaddition, Here is a result [1] showing that how much improvement using shmem can help.

[1] https://bit.ly/3dy4rya

Differential Revision: https://phabricator.services.mozilla.com/D130220
2022-01-20 04:11:48 +00:00
sotaro 17570fcca4 Bug 1744868 - Remove KeepAlive r=gfx-reviewers,lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D133162
2021-12-08 03:37:35 +00:00
Bob Owen a5aa570a4c Bug 1739908 p2: Only use PersistentBufferProviderShared::mPermanentBackBuffer when first needed. r=lsalzman
This removes some of the changes that meant we started using
mPermanentBackBuffer straight away and we now wait until we actually try and
lock a read locked texture.
While this might still give a very small risk of contention, it gives
improvements in the following two circumstances.
* If a canvas texture is never forwarded and never read locked, it means we will
  only use one texture with no copies.
* If a canvas is always fully overwritten at the start of the frame (and a
  snapshot is not taken between frames), then we avoid a copy on each frame.

This also adds back in code so that on an OPEN_READ_WRITE lock we cache the data
surface if required, because that texture will be the new front buffer and we
won't be using mPermanentBackBuffer at that point.

Depends on D132601

Differential Revision: https://phabricator.services.mozilla.com/D132602
2021-12-07 09:36:18 +00:00
sotaro 80a705656a Bug 1743930 - Remove unused TextureAllocationFlags flag handling r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D132648
2021-12-02 07:08:43 +00:00
Alexandru Michis dcb0a66282 Backed out changeset d889e102b481 (bug 1743930) for causing mda failures in DeviceManagerDx.cpp 2021-12-02 05:42:06 +02:00
sotaro 639a9cd58e Bug 1743930 - Remove unused TextureAllocationFlags flag handling r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D132648
2021-12-02 02:42:00 +00:00
sotaro d19f650408 Bug 1743743 - Remove TextureReadbackSink and ReadbackManagerD3D11 r=gfx-reviewers,nical
TextureReadbackSink and ReadbackManagerD3D11 are not used.

Differential Revision: https://phabricator.services.mozilla.com/D132542
2021-12-01 09:11:30 +00:00
sotaro d184dc0218 Bug 1742739 - Remove HasIntermediateBuffer r=gfx-reviewers,jnicol
HasIntermediateBuffer is always false. It could be removed.

Differential Revision: https://phabricator.services.mozilla.com/D131996
2021-11-28 11:40:16 +00:00
Nika Layzell 26555d958a Bug 1734739 - Part 1: Stop requiring otherpid for ShareTo, r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D128218
2021-11-24 17:56:00 +00:00
Nika Layzell e8759da1c8 Bug 1734735 - Part 6: Remove dead TextureSync code, r=dthayer
Differential Revision: https://phabricator.services.mozilla.com/D128215
2021-11-23 16:15:22 +00:00
sotaro 01cd151a04 Bug 1741775 - Remove LayersBackend::LAYERS_OPENGL r=gfx-reviewers,nical
LayersBackend::LAYERS_OPENGL is not used any more.

Code under widget/uikit is dead code.

Differential Revision: https://phabricator.services.mozilla.com/D131461
2021-11-20 22:52:14 +00:00
sotaro 1b44e05e92 Bug 1741784 - Remove unused code around CompositableHost r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D131466
2021-11-19 07:41:29 +00:00
Andrew Osmond 25e9161651 Bug 1742010 - File descriptor leak when serializing into SurfaceDescriptorAndroidHardwareBuffer. r=sotaro,gfx-reviewers
We accidently duplicate the file descriptor when serializing because we
hit a constructor for ipc::FileDescriptor which duplicates the handle
instead of just taking it. This means we are supposed to close it
explicitly but we've already forgotten about it. We should just do a
move instead to avoid this.

Differential Revision: https://phabricator.services.mozilla.com/D131569
2021-11-19 02:07:53 +00:00
sotaro 136d8c49e7 Bug 1741123 - Remove LayersBackend::LAYERS_D3D11 r=gfx-reviewers,bradwerth,nical
Remove LayersBackend::LAYERS_D3D11 is not used any more.

Differential Revision: https://phabricator.services.mozilla.com/D131107
2021-11-18 21:27:48 +00:00
Narcis Beleuzu ce6ad351e2 Backed out changeset 12736f9bf7b5 (bug 1741784) for compositor leakchecks. CLOSED TREE 2021-11-18 18:07:09 +02:00
sotaro 2dc3b69cde Bug 1741784 - Remove unused code around CompositableHost r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D131466
2021-11-18 14:16:35 +00:00
Nika Layzell d73755617d Bug 1732343 - Part 2: Migrate all uses of base::FileDescriptor to UniqueFileHandle, r=handyman
This is useful for the following parts, as UniqueFileHandle is a cross-platform
type which can also be used to support transferring HANDLEs between processes.

This change requires fairly sweeping changes to existing callsites, which
previously did not require owning access to the handle types when transferring.
For the most part these changes were straightforward, but manual.

Differential Revision: https://phabricator.services.mozilla.com/D126564
2021-11-09 14:17:32 +00:00
Cristian Tuns cbd178830f Backed out 10 changesets (bug 1732343) for causing coverage build bustages (Bug 1739590).
Backed out changeset bba94c79f3e1 (bug 1732343)
Backed out changeset d30fa1e1f605 (bug 1732343)
Backed out changeset ed0b4f757c4b (bug 1732343)
Backed out changeset a272da134c34 (bug 1732343)
Backed out changeset ccb259d73843 (bug 1732343)
Backed out changeset a292990b62de (bug 1732343)
Backed out changeset 7d1854782ca8 (bug 1732343)
Backed out changeset 29eaabd9ffb3 (bug 1732343)
Backed out changeset 1aa26657a7a6 (bug 1732343)
Backed out changeset 7a6708dc620a (bug 1732343)
2021-11-05 07:21:04 -04:00
Nika Layzell b8279164db Bug 1732343 - Part 2: Migrate all uses of base::FileDescriptor to UniqueFileHandle, r=handyman
This is useful for the following parts, as UniqueFileHandle is a cross-platform
type which can also be used to support transferring HANDLEs between processes.

This change requires fairly sweeping changes to existing callsites, which
previously did not require owning access to the handle types when transferring.
For the most part these changes were straightforward, but manual.

Differential Revision: https://phabricator.services.mozilla.com/D126564
2021-11-04 19:20:17 +00:00
Tetsuharu Ohzeki 889748a9e9 Bug 1733977 - Remove unused gfx/layers/client/ContentClient.h. r=gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D127516
2021-10-06 00:40:06 +00:00
Tetsuharu Ohzeki 0c71b39b6f Bug 1733980 - Remove vestiges of removed ***Layer class. r=gfx-reviewers,mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D127464
2021-10-04 22:19:11 +00:00
Andrew Osmond 3a98545701 Bug 1728903 - Remove plumbing for CanvasLayer and ImageLayer. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D124406
2021-09-18 11:44:51 +00:00
Matt Woodrow c19e47f6c4 Bug 1729841 - Remove TextureDIB. r=jgilbert,gfx-reviewers,nical
Differential Revision: https://phabricator.services.mozilla.com/D125023
2021-09-15 04:09:43 +00:00
Bob Owen bda2b82dc9 Bug 1730598: Flush and DetachAllSnapshots in TextureClient::EndDraw. r=lsalzman
This is required to make sure dependents are updated.

Differential Revision: https://phabricator.services.mozilla.com/D125529
2021-09-14 16:11:41 +00:00
Bob Owen 74b9880c08 Bug 1709603: Use a separate permanent canvas back buffer when texture has synchronization. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D125201
2021-09-10 16:37:05 +00:00
Tetsuharu Ohzeki 1de09d73e8 Bug 1729817 - Remove unused TextureClient::PrintInfo(). r=gfx-reviewers,mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D125017
2021-09-09 15:46:19 +00:00
Iulian Moraru d7a06601a0 Backed out changeset 089962073382 (bug 1728903) for causing Bp-hybrid bustages on ImageBitmapRenderingContext.cpp. CLOSED TREE 2021-09-03 18:49:32 +03:00
Andrew Osmond 472ab1dfc3 Bug 1728903 - Remove plumbing for CanvasLayer and ImageLayer. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D124406
2021-09-03 12:52:05 +00:00
Noemi Erli e5f5e8d032 Backed out changeset f12c6a6cd1a5 (bug 1728903) for causing build bustage in TestTextures.cpp CLOSED TREE 2021-09-03 05:16:59 +03:00
Andrew Osmond 4219d92daf Bug 1728903 - Remove plumbing for CanvasLayer and ImageLayer. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D124406
2021-09-03 01:48:17 +00:00