Bug 253655

Summary: [GPU Process] Have one copy of NativeImage when it is shared between WebProcess and GPUProcess
Product: WebKit Reporter: Said Abou-Hallawa <sabouhallawa>
Component: ImagesAssignee: Diego Pino <dpino>
Status: RESOLVED FIXED    
Severity: Normal CC: dpino, sabouhallawa, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Description Said Abou-Hallawa 2023-03-09 09:39:30 PST
Since WebProcess has to share the local PlatformImage with GPUProcess through ShareableBitmap, we can get rid of the local PlatformImage and have both processes use the ShareableBitmap. Also for GPUProcess, we can ensure we decode the PlatformImage for sizeForDrawing instead of decoding it for the full size.
Comment 1 Said Abou-Hallawa 2023-03-09 10:28:00 PST
Pull request: https://github.com/WebKit/WebKit/pull/11311
Comment 2 Radar WebKit Bug Importer 2023-03-09 10:28:12 PST
<rdar://problem/106508715>
Comment 3 EWS 2023-03-15 11:48:52 PDT
Committed 261700@main (00ca303e3374): <https://commits.webkit.org/261700@main>

Reviewed commits have been landed. Closing PR #11311 and removing active labels.
Comment 4 Diego Pino 2023-03-15 18:11:07 PDT
WebKitGTK and WPE Ubuntu 20.04 post-commit build bots are failing after this patch:

https://build.webkit.org/#/builders/595/builds/8429/steps/9/logs/stdio

```
/home/buildbot/worker/GTK-Linux-64-bit-Release-Ubuntu-2004-Build/build/Source/WebCore/platform/graphics/DecodingOptions.h:48:53: error: ‘bool WebCore::DecodingOptions::operator==(const WebCore::DecodingOptions&) const’ cannot be defaulted
   48 |     bool operator==(const DecodingOptions&) const = default;
``` 

Default comparisons by value (P1946R0) is only available since GCC10.
  - https://en.cppreference.com/w/cpp/compiler_support/20

These bots use GCC9.4, which we need to support until 20th April 2023.
  - https://trac.webkit.org/wiki/WebKitGTK/GCCRequirement
Comment 5 Diego Pino 2023-03-15 18:12:09 PDT
Re-opening for pull request https://github.com/webkit/webkit/pull/11586
Comment 6 EWS 2023-03-15 18:59:10 PDT
Committed 261725@main (caaf11e8a339): <https://commits.webkit.org/261725@main>

Reviewed commits have been landed. Closing PR #11586 and removing active labels.