<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>239488</bug_id>
          
          <creation_ts>2022-04-19 00:55:40 -0700</creation_ts>
          <short_desc>REGRESSION(r292803) WinCairo GPU process significant performance drop</short_desc>
          <delta_ts>2022-04-21 02:43:40 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>239399</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>239494</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Fujii Hironori">fujii</reporter>
          <assigned_to name="Fujii Hironori">fujii</assigned_to>
          <cc>kkinnunen</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1862458</commentid>
    <comment_count>0</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-19 00:55:40 -0700</bug_when>
    <thetext>WinCairo WebKit2 significant performance regression

1. Start WinCairo WebKit2 MiniBrowser
2. Browsing some web sites

Very slow.

r292784 Good
r292803 Bad</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862696</commentid>
    <comment_count>1</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-19 13:22:16 -0700</bug_when>
    <thetext>r292803 caused this bug.
Bug 238516 – RemoteRenderingBackend should have dedicated IPC::Connection for out-of-stream messages

Disabling GPU process doesn&apos;t seem to work around this issue.

&gt; reg add HKEY_CURRENT_USER\Software\WebKit /v gpu_process_canvas_rendering /t REG_DWORD /d 0 /f
&gt; reg add HKEY_CURRENT_USER\Software\WebKit /v gpu_process_webgl /t REG_DWORD /d 0 /f</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1862719</commentid>
    <comment_count>2</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-19 14:04:46 -0700</bug_when>
    <thetext>(In reply to Fujii Hironori from comment #1)
&gt; Disabling GPU process doesn&apos;t seem to work around this issue.
&gt; 
&gt; &gt; reg add HKEY_CURRENT_USER\Software\WebKit /v gpu_process_canvas_rendering /t REG_DWORD /d 0 /f
&gt; &gt; reg add HKEY_CURRENT_USER\Software\WebKit /v gpu_process_webgl /t REG_DWORD /d 0 /f

This was wrong. These flags were removed.
  Bug 238766 – Remove GPU process system feature flags

I think there is no good way to disable GPU process for WinCairo. I applied the following patch to disable GPU process, and confirmed it worked around the issue.

diff --git a/Source/WebKit/UIProcess/WebPageProxy.cpp b/Source/WebKit/UIProcess/WebPageProxy.cpp
index 257a744f94c2..37daefef8ca3 100644
--- a/Source/WebKit/UIProcess/WebPageProxy.cpp
+++ b/Source/WebKit/UIProcess/WebPageProxy.cpp
@@ -8455,14 +8455,14 @@ WebPageCreationParameters WebPageProxy::creationParameters(WebProcessProxy&amp; proc
     // FIXME: This is also being passed over the to WebProcess via the PreferencesStore.
     parameters.shouldCaptureVideoInGPUProcess = preferences().captureVideoInGPUProcessEnabled();
     // FIXME: This is also being passed over the to WebProcess via the PreferencesStore.
-    parameters.shouldRenderCanvasInGPUProcess = preferences().useGPUProcessForCanvasRenderingEnabled();
+    parameters.shouldRenderCanvasInGPUProcess = false;
     // FIXME: This is also being passed over the to WebProcess via the PreferencesStore.
     parameters.shouldRenderDOMInGPUProcess = preferences().useGPUProcessForDOMRenderingEnabled();
     // FIXME: This is also being passed over the to WebProcess via the PreferencesStore.
     parameters.shouldPlayMediaInGPUProcess = preferences().useGPUProcessForMediaEnabled();
 #if ENABLE(WEBGL)
     // FIXME: This is also being passed over the to WebProcess via the PreferencesStore.
-    parameters.shouldRenderWebGLInGPUProcess = preferences().useGPUProcessForWebGLEnabled();
+    parameters.shouldRenderWebGLInGPUProcess = false;
 #endif
 
     // FIXME: This is also being passed over the to WebProcess via the PreferencesStore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863035</commentid>
    <comment_count>3</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-20 13:26:48 -0700</bug_when>
    <thetext>I don&apos;t know what is the trigger causes this performance drop.

1. Start WinCairo WK2 MiniBrowser
2. Go to https://webkit.org/
3. Scrolling the page is smooth
4. Go to https://www.reddit.com/
5. loading the page and scrolling the page is very slow
6. Push Back button to go to https://webkit.org/
7. loading the page and scrolling the page is very slow</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863169</commentid>
    <comment_count>4</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-20 18:47:16 -0700</bug_when>
    <thetext>If a page has a canvas element, WebPage::ensureRemoteRenderingBackendProxy creates m_remoteRenderingBackendProxy.

WebPage::finalizeRenderingUpdate calls m_remoteRenderingBackendProxy-&gt;finalizeRenderingUpdate() if m_remoteRenderingBackendProxy is available.

RemoteRenderingBackendProxy::finalizeRenderingUpdate sends a FinalizeRenderingUpdate stream message.

RemoteRenderingBackendProxy::streamConnection has 3 seconds tiemout.
This is causing the performance drop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863201</commentid>
    <comment_count>5</comment_count>
      <attachid>458039</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-20 21:27:17 -0700</bug_when>
    <thetext>Created attachment 458039
WIP patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863202</commentid>
    <comment_count>6</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-20 21:30:58 -0700</bug_when>
    <thetext>RemoteRenderingBackendProxy::streamConnection waits for DidCreateWakeUpSemaphoreForDisplayListStream message for 3 seconds.
But, DidCreateWakeUpSemaphoreForDisplayListStream message doesn&apos;t come because the dedicated connection isn&apos;t opened in the server side.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863208</commentid>
    <comment_count>7</comment_count>
      <attachid>458040</attachid>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-20 22:46:46 -0700</bug_when>
    <thetext>Created attachment 458040
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863209</commentid>
    <comment_count>8</comment_count>
      <attachid>458040</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-04-20 22:52:14 -0700</bug_when>
    <thetext>Comment on attachment 458040
Patch

The issue that prompted this was fixed in bug 239399 
Note: WinCairo could start building and testing with ENABLE_IPC_TESTING, we&apos;re working on improving the test coverage of IPC</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863214</commentid>
    <comment_count>9</comment_count>
    <who name="Fujii Hironori">fujii</who>
    <bug_when>2022-04-20 23:44:59 -0700</bug_when>
    <thetext>Oh, I didn&apos;t notice it. Thank you.

*** This bug has been marked as a duplicate of bug 239399 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863242</commentid>
    <comment_count>10</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-04-21 02:43:40 -0700</bug_when>
    <thetext>I think this is still a good fix, you may reconsider not duping but just landing the fix.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>458039</attachid>
            <date>2022-04-20 21:27:17 -0700</date>
            <delta_ts>2022-04-20 22:46:33 -0700</delta_ts>
            <desc>WIP patch</desc>
            <filename>wip.patch</filename>
            <type>text/plain</type>
            <size>1021</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kLmNwcCBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9SZW1v
dGVSZW5kZXJpbmdCYWNrZW5kLmNwcAppbmRleCA3ZDZmZDI3OGEzM2QuLmJkZmY5OGI1MzE2ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9HUFVQcm9jZXNzL2dyYXBoaWNzL1JlbW90ZVJlbmRl
cmluZ0JhY2tlbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvR1BVUHJvY2Vzcy9ncmFwaGljcy9S
ZW1vdGVSZW5kZXJpbmdCYWNrZW5kLmNwcApAQCAtOTksNiArOTksNyBAQCBSZW1vdGVSZW5kZXJp
bmdCYWNrZW5kOjpSZW1vdGVSZW5kZXJpbmdCYWNrZW5kKEdQVUNvbm5lY3Rpb25Ub1dlYlByb2Nl
c3MmIGdwdUNvbgogI2VuZGlmCiB7CiAgICAgQVNTRVJUKFJ1bkxvb3A6OmlzTWFpbigpKTsKKyAg
ICBtX3N0cmVhbUNvbm5lY3Rpb24tPm9wZW4oKTsKICAgICBzZW5kKE1lc3NhZ2VzOjpSZW1vdGVS
ZW5kZXJpbmdCYWNrZW5kUHJveHk6OkRpZENyZWF0ZVdha2VVcFNlbWFwaG9yZUZvckRpc3BsYXlM
aXN0U3RyZWFtKG1fd29ya1F1ZXVlLT53YWtlVXBTZW1hcGhvcmUoKSksIG1fcmVuZGVyaW5nQmFj
a2VuZElkZW50aWZpZXIpOwogfQogCkBAIC0xMTEsNyArMTEyLDYgQEAgdm9pZCBSZW1vdGVSZW5k
ZXJpbmdCYWNrZW5kOjpzdGFydExpc3RlbmluZ0ZvcklQQygpCiAgICAgICAgIG1fY2FuUmVnaXN0
ZXJSZW1vdGVEaXNwbGF5TGlzdHMgPSB0cnVlOwogICAgIH0KICAgICBtX3N0cmVhbUNvbm5lY3Rp
b24tPnN0YXJ0UmVjZWl2aW5nTWVzc2FnZXMoKnRoaXMsIE1lc3NhZ2VzOjpSZW1vdGVSZW5kZXJp
bmdCYWNrZW5kOjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcmVuZGVyaW5nQmFja2VuZElkZW50
aWZpZXIudG9VSW50NjQoKSk7Ci0gICAgbV9zdHJlYW1Db25uZWN0aW9uLT5vcGVuKCk7CiB9CiAK
IHZvaWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZDo6c3RvcExpc3RlbmluZ0ZvcklQQygpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>458040</attachid>
            <date>2022-04-20 22:46:46 -0700</date>
            <delta_ts>2022-04-20 22:52:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239488-20220421144645.patch</filename>
            <type>text/plain</type>
            <size>1934</size>
            <attacher name="Fujii Hironori">fujii</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkyOTUxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDZlYmFhM2RiMWYyODhlNWIw
M2ExYTlkMWRhNTk0ZTYyMWI4OGE3MDMuLjUwYTcxNTc1ZTFjNTVkODZlMmQzNzQwODI3ZmEyYzIz
OTczZTQ4MTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMjItMDQtMjAgIEZ1amlpIEhp
cm9ub3JpICA8SGlyb25vcmkuRnVqaWlAc29ueS5jb20+CisKKyAgICAgICAgUkVHUkVTU0lPTihy
MjkyODAzKSBXaW5DYWlybyBHUFUgcHJvY2VzcyBzaWduaWZpY2FudCBwZXJmb3JtYW5jZSBkcm9w
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzk0ODgK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTaW5jZSBy
MjkyODAzIGNoYW5nZWQgUmVtb3RlUmVuZGVyaW5nQmFja2VuZCB0byBoYXZlIGEgZGVkaWNhdGVk
CisgICAgICAgIElQQzo6Q29ubmVjdGlvbiwgV2luQ2Fpcm8gR1BVIHByb2Nlc3MgcGVyZm9ybWFu
Y2Ugc2lnbmlmaWNhbnRseQorICAgICAgICBkcm9wcGVkIGRvd24uCisKKyAgICAgICAgUmVtb3Rl
UmVuZGVyaW5nQmFja2VuZFByb3h5OjpzdHJlYW1Db25uZWN0aW9uIHdhcyB3YWl0aW5nIGZvcgor
ICAgICAgICBEaWRDcmVhdGVXYWtlVXBTZW1hcGhvcmVGb3JEaXNwbGF5TGlzdFN0cmVhbSBtZXNz
YWdlIGZvciAzCisgICAgICAgIHNlY29uZHMuIEJ1dCwgdGhlIG1lc3NhZ2UgZGlkbid0IGNvbWUg
YW5kIGl0IHRpbWVkIG91dC4KKworICAgICAgICBSZW1vdGVSZW5kZXJpbmdCYWNrZW5kIGNvbnN0
cnVjdG9yIHRyaWVkIHRvIHNlbmQgdGhlCisgICAgICAgIERpZENyZWF0ZVdha2VVcFNlbWFwaG9y
ZUZvckRpc3BsYXlMaXN0U3RyZWFtIG1lc3NhZ2UsIGJ1dCB0aGUKKyAgICAgICAgZGVkaWNhdGVk
IGNvbm5lY3Rpb24gd2Fzbid0IG9wZW5lZCB5ZXQuIFRoZSBtZXNzYWdlIHdhcyBxdWV1ZWQKKyAg
ICAgICAgaW50byBtX291dGdvaW5nTWVzc2FnZXMuCisKKyAgICAgICAgQ29ubmVjdGlvbjo6b3Bl
biBvZiBXaW5kb3dzIHBvcnQgc2hvdWxkIHNlbmQgdGhlIHBlbmRpbmcgb3V0Z29pbmcKKyAgICAg
ICAgbWVzc2FnZXMuCisKKyAgICAgICAgKiBQbGF0Zm9ybS9JUEMvd2luL0Nvbm5lY3Rpb25XaW4u
Y3BwOgorICAgICAgICAoSVBDOjpDb25uZWN0aW9uOjpvcGVuKTogQ2FsbCBzZW5kT3V0Z29pbmdN
ZXNzYWdlcygpLgorCiAyMDIyLTA0LTE3ICBDaHJpcyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+
CiAKICAgICAgICAgTGV2ZXJhZ2UgU3RyaW5nVmlldyBpbiBtb3JlIHBsYWNlcwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvd2luL0Nvbm5lY3Rpb25XaW4uY3BwIGIvU291
cmNlL1dlYktpdC9QbGF0Zm9ybS9JUEMvd2luL0Nvbm5lY3Rpb25XaW4uY3BwCmluZGV4IDlmZjMy
NjQyOWUzZDVkMjVlNDVkMzIxM2E1ZTRlNjI5OGM3Yjk3OTkuLjU0Y2I0MDhmYmQ1NDc2YzBlMWJl
NGNlMTA2N2JmOGNkZWQyZDljNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvUGxhdGZvcm0v
SVBDL3dpbi9Db25uZWN0aW9uV2luLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1BsYXRmb3JtL0lQ
Qy93aW4vQ29ubmVjdGlvbldpbi5jcHAKQEAgLTI2Myw2ICsyNjMsOSBAQCBib29sIENvbm5lY3Rp
b246Om9wZW4oKQogCiAgICAgLy8gU2NoZWR1bGUgYSByZWFkLgogICAgIGludm9rZVJlYWRFdmVu
dEhhbmRsZXIoKTsKKworICAgIC8vIFNlbmQgYW55IHBlbmRpbmcgb3V0Z29pbmcgbWVzc2FnZXMu
CisgICAgc2VuZE91dGdvaW5nTWVzc2FnZXMoKTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAo=
</data>
<flag name="review"
          id="486800"
          type_id="1"
          status="+"
          setter="kkinnunen"
    />
          </attachment>
      

    </bug>

</bugzilla>