New issue
Advanced search Search tips

Issue 839687 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 857295



Sign in to add a comment

Handle a low memory situation in LayerTreeHostImpl

Project Member Reported by gyuyoung...@chromium.org, May 4 2018

Issue description

Under the low memory situation, it would be good to release used memory as much as possible. Especially, it's very sensitive for low-end devices that don't have enough memory. However, |LayerTreeHostImpl| has not supported any functionality to handle OOM situation. Let's support it.
 
Project Member

Comment 1 by bugdroid1@chromium.org, May 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/617f956c028066c13bc01c846d41636374f5afbc

commit 617f956c028066c13bc01c846d41636374f5afbc
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Fri May 18 02:44:43 2018

Handle a low memory situation in LayerTreeHostImpl

Under the low memory situation, we need to release used memory
if possible. Especially, it's very important for low-end devices
which don't have enough memory. This CL adds a listener to handle
the low memory situation to |LayerTreeHostImpl| only for low-end
devices for now.

TEST: LayerTreeHostImplTest.OnMemoryPressure

Bug: 839687
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I2314ac363cea55a95238e0a76be1dcf9553a2930
Reviewed-on: https://chromium-review.googlesource.com/1000193
Reviewed-by: danakj <danakj@chromium.org>
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Cr-Commit-Position: refs/heads/master@{#559782}
[modify] https://crrev.com/617f956c028066c13bc01c846d41636374f5afbc/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/617f956c028066c13bc01c846d41636374f5afbc/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/617f956c028066c13bc01c846d41636374f5afbc/cc/trees/layer_tree_host_impl_unittest.cc

Project Member

Comment 2 by bugdroid1@chromium.org, May 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3c07526593635d1ac91f96d36af168b28a84f1b0

commit 3c07526593635d1ac91f96d36af168b28a84f1b0
Author: Findit <findit-for-me@appspot.gserviceaccount.com>
Date: Fri May 18 05:13:08 2018

Revert "Handle a low memory situation in LayerTreeHostImpl"

This reverts commit 617f956c028066c13bc01c846d41636374f5afbc.

Reason for revert:

Findit (https://goo.gl/kROfz5) identified CL at revision 559782 as the
culprit for failures in the build cycles as shown on:
https://findit-for-me.appspot.com/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3ItbWVyRAsSDVdmU3VzcGVjdGVkQ0wiMWNocm9taXVtLzYxN2Y5NTZjMDI4MDY2YzEzYmMwMWM4NDZkNDE2MzYzNzRmNWFmYmMM

Sample Failed Build: https://ci.chromium.org/buildbot/chromium.memory/Linux%20MSan%20Tests/9873

Sample Failed Step: cc_unittests

Original change's description:
> Handle a low memory situation in LayerTreeHostImpl
> 
> Under the low memory situation, we need to release used memory
> if possible. Especially, it's very important for low-end devices
> which don't have enough memory. This CL adds a listener to handle
> the low memory situation to |LayerTreeHostImpl| only for low-end
> devices for now.
> 
> TEST: LayerTreeHostImplTest.OnMemoryPressure
> 
> Bug: 839687
> Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
> Change-Id: I2314ac363cea55a95238e0a76be1dcf9553a2930
> Reviewed-on: https://chromium-review.googlesource.com/1000193
> Reviewed-by: danakj <danakj@chromium.org>
> Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
> Cr-Commit-Position: refs/heads/master@{#559782}

Change-Id: I205db818935750d8df9465213b8c80314d2e8201
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 839687
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://chromium-review.googlesource.com/1065571
Cr-Commit-Position: refs/heads/master@{#559804}
[modify] https://crrev.com/3c07526593635d1ac91f96d36af168b28a84f1b0/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/3c07526593635d1ac91f96d36af168b28a84f1b0/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/3c07526593635d1ac91f96d36af168b28a84f1b0/cc/trees/layer_tree_host_impl_unittest.cc

Project Member

Comment 3 by bugdroid1@chromium.org, May 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4b6a46c9e3a9520193ba910d11e5bf7ca08db042

commit 4b6a46c9e3a9520193ba910d11e5bf7ca08db042
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Fri May 18 08:12:07 2018

Reland "Handle a low memory situation in LayerTreeHostImpl"

This reverts commit 3c07526593635d1ac91f96d36af168b28a84f1b0.

Original CL missed disabling the test case in the MEMORY_SANITIZER
and LEAK_SANITIZER. This CL disabled the test case both on the
MEMORY_SANITIZER and LEAK_SANITIZER as well.

TBR=ericrk@chromium.org,danakj@chromium.org

Bug: 839687
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I400894efd8badf4b26c81a8b4106aeb47947b4cf
Reviewed-on: https://chromium-review.googlesource.com/1065535
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Reviewed-by: Gyuyoung Kim <gyuyoung.kim@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559836}
[modify] https://crrev.com/4b6a46c9e3a9520193ba910d11e5bf7ca08db042/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/4b6a46c9e3a9520193ba910d11e5bf7ca08db042/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/4b6a46c9e3a9520193ba910d11e5bf7ca08db042/cc/trees/layer_tree_host_impl_unittest.cc

The original test case has generated test failures on ASAN, TSAN, Android, windows, and chromecast. Basically, ProcessMetrics doesn't work on the platforms well. It looks I need to implement the test case again by using other metrics.
Project Member

Comment 5 by bugdroid1@chromium.org, Jun 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dcf4c2b505affbafb7cba9ec100ba9b0a4ee993e

commit dcf4c2b505affbafb7cba9ec100ba9b0a4ee993e
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Tue Jun 05 01:38:47 2018

Disable LayerTreeHostImplTest.OnMemoryPressure on chromecast as well

The test case has generated a test failure on chromecase as well. I guess that
ProcessMetric doesn't work on some platforms well. Once this CL disables it like
other platforms. Then, new CL will try to fix the failure for all platforms.

Bug: 839687
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I34794c3816c3301fd7535bd2d2d2b5c0e70b21ec
Reviewed-on: https://chromium-review.googlesource.com/1084146
Reviewed-by: danakj <danakj@chromium.org>
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Cr-Commit-Position: refs/heads/master@{#564340}
[modify] https://crrev.com/dcf4c2b505affbafb7cba9ec100ba9b0a4ee993e/cc/trees/layer_tree_host_impl_unittest.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Jun 12 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1f5d4551b8b220719ed37483f35063f6a2b338e8

commit 1f5d4551b8b220719ed37483f35063f6a2b338e8
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Tue Jun 12 02:30:11 2018

Update LayerTreeHostImplTest.OnMemoryPressure test

The test case has been only working on some platforms. Because it looks
ProcessMetric doesn't work for all platforms. To solve this issue,
this CL updates the test case by using ResourcePool for all platforms.

Bug: 839687
TEST: LayerTreeHostImplTest.OnMemoryPressure
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Iba4c30027f5e836f0e37ccf60db75a3ee6193f4b
Reviewed-on: https://chromium-review.googlesource.com/1092409
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Reviewed-by: Eric Karl <ericrk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#566281}
[modify] https://crrev.com/1f5d4551b8b220719ed37483f35063f6a2b338e8/cc/trees/layer_tree_host_impl_unittest.cc

Project Member

Comment 9 by 42576172...@developer.gserviceaccount.com, Jun 20 2018

😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/11b41703240000

All of the runs failed. The most common error (1/20 runs) was:
IOError: [Errno 2] No such file or directory: '/b/s/w/itqaBWmJ/tmp7wJZWOtelemetry/histograms.json'
Project Member

Comment 11 by 42576172...@developer.gserviceaccount.com, Jun 20 2018

😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/14dd3eab240000

All of the runs failed. The most common error (1/20 runs) was:
IOError: [Errno 2] No such file or directory: '/b/s/w/itii1JYH/tmp9k6Wuftelemetry/histograms.json'
Project Member

Comment 13 by 42576172...@developer.gserviceaccount.com, Jun 20 2018

😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/12c43963240000

All of the runs failed. The most common error (20/20 runs) was:
AssertionError: Must specify a valid format.
Project Member

Comment 14 by 42576172...@developer.gserviceaccount.com, Jun 20 2018

😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/12b4dc13240000

All of the runs failed. The most common error (20/20 runs) was:
AssertionError: Must specify a valid format.

Comment 15 by dtu@chromium.org, Jun 21 2018

Cc: eyaich@chromium.org nednguyen@chromium.org
+nednguyen, eyaich: any idea what this error is? Looks like run_performance_tests.py is passing in --output-format=histograms --output-format=json-test-results in the run below.

https://chrome-swarming.appspot.com/task?id=3e34a51bbe42d710
Project Member

Comment 17 by 42576172...@developer.gserviceaccount.com, Jun 21 2018

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/15a08563240000
Project Member

Comment 19 by 42576172...@developer.gserviceaccount.com, Jun 21 2018

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/16e442e3240000
Project Member

Comment 21 by 42576172...@developer.gserviceaccount.com, Jun 21 2018

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/12ef5f17240000
Cc: eakuefner@chromium.org
That is very odd.  It seems to be parsing json out of the json-test-results given the stack trace:

  CreateResults at /b/s/w/ir/third_party/catapult/telemetry/telemetry/internal/results/results_options.py:164
    output_stream = _GetOutputStream(output_format, options.output_dir)
  _GetOutputStream at /b/s/w/ir/third_party/catapult/telemetry/telemetry/internal/results/results_options.py:115
    assert output_format in _OUTPUT_FORMAT_CHOICES, 'Must specify a valid format.'
AssertionError: Must specify a valid format.

Locals:
  output_dir    : '/b/s/w/itzVTQFG/tmpHRusABtelemetry'
  output_format : 'json'
 

We are passing in histograms and json-test-results which hasn't changed recently.  Also strnage that it would be failing for this particular benchmark and not more of them.  

Adding Ethan in case he has any insight given the histogram migration.
eyaich@, thank you for taking a look it. I just start other perf tests :)
Project Member

Comment 25 by 42576172...@developer.gserviceaccount.com, Jun 22 2018

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/11923b27240000
Hmm, the error still happens after running new tests.

"Error: The request failed with status code: 500"
Project Member

Comment 29 by 42576172...@developer.gserviceaccount.com, Jun 25 2018

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/14f7f857240000
Project Member

Comment 32 by 42576172...@developer.gserviceaccount.com, Jun 26 2018

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/14925000a40000
Project Member

Comment 33 by 42576172...@developer.gserviceaccount.com, Jun 26 2018

😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/14bef6d3240000

The swarming task expired. The bots are likely overloaded, dead, or misconfigured.
Project Member

Comment 34 by 42576172...@developer.gserviceaccount.com, Jun 27 2018

😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/1497e548a40000

The swarming task expired. The bots are likely overloaded, dead, or misconfigured.
Blocking: 857295
Project Member

Comment 37 by 42576172...@developer.gserviceaccount.com, Jun 28 2018

📍 Job complete. See results below.
https://pinpoint-dot-chromeperf.appspot.com/job/12641fc0a40000
Project Member

Comment 38 by bugdroid1@chromium.org, Jul 3

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/18ba607af1f7ed07275e15824b430ae10976a9b8

commit 18ba607af1f7ed07275e15824b430ae10976a9b8
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Tue Jul 03 15:10:22 2018

CC: Make LayerTreeHostImpl::OnMemoryPressure work for the desktop as well

LayerTreeHostImpl::OnMemoryPressure has only worked for low-end devices.
But it would be good if it works for all devices.

Bug: 839687
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I9f670ab08587ad4c5f626eb74fe5d7c9db256150
Reviewed-on: https://chromium-review.googlesource.com/1107025
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Reviewed-by: Eric Karl <ericrk@chromium.org>
Cr-Commit-Position: refs/heads/master@{#572216}
[modify] https://crrev.com/18ba607af1f7ed07275e15824b430ae10976a9b8/cc/trees/layer_tree_host_impl.cc

Project Member

Comment 39 by bugdroid1@chromium.org, Jul 4

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a49d91b6992b8d3357efeb32a2005d5b11ada26a

commit a49d91b6992b8d3357efeb32a2005d5b11ada26a
Author: Takuto Ikuta <tikuta@chromium.org>
Date: Wed Jul 04 00:30:07 2018

Revert "CC: Make LayerTreeHostImpl::OnMemoryPressure work for the desktop as well"

This reverts commit 18ba607af1f7ed07275e15824b430ae10976a9b8.

Reason for revert: Speculative revert for consistent failure on linux-chromeos-rel CQ builder.

Original change's description:
> CC: Make LayerTreeHostImpl::OnMemoryPressure work for the desktop as well
> 
> LayerTreeHostImpl::OnMemoryPressure has only worked for low-end devices.
> But it would be good if it works for all devices.
> 
> Bug: 839687
> Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
> Change-Id: I9f670ab08587ad4c5f626eb74fe5d7c9db256150
> Reviewed-on: https://chromium-review.googlesource.com/1107025
> Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
> Reviewed-by: Eric Karl <ericrk@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#572216}

TBR=ericrk@chromium.org,gyuyoung.kim@lge.com

Change-Id: I5e8d81f540311373a3d79854310ec59896494cae
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 839687, 860090
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://chromium-review.googlesource.com/1125459
Reviewed-by: Takuto Ikuta <tikuta@chromium.org>
Commit-Queue: Takuto Ikuta <tikuta@chromium.org>
Cr-Commit-Position: refs/heads/master@{#572405}
[modify] https://crrev.com/a49d91b6992b8d3357efeb32a2005d5b11ada26a/cc/trees/layer_tree_host_impl.cc

😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/12d661d8a40000

All of the runs failed. The most common error (20/20 runs) was:
ReadValueError: The test didn't produce memory.long_running_idle_gmail_tbmv2/perf_results.json.
😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/14dbf4eaa40000

All of the runs failed. The most common error (20/20 runs) was:
ReadValueError: The test didn't produce memory.long_running_idle_gmail_tbmv2/perf_results.json.
😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/14de2bcaa40000

All of the runs failed. The most common error (19/20 runs) was:
ReadValueError: The test didn't produce memory.long_running_idle_gmail_tbmv2/perf_results.json.
😿 Pinpoint job stopped with an error.
https://pinpoint-dot-chromeperf.appspot.com/job/14cb2a1aa40000

All of the runs failed. The most common error (20/20 runs) was:
ReadValueError: The test didn't produce memory.long_running_idle_gmail_tbmv2/perf_results.json.
Project Member

Comment 48 by bugdroid1@chromium.org, Jul 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0bb78714c036b0f62d9f65a9798deda803ebc4c4

commit 0bb78714c036b0f62d9f65a9798deda803ebc4c4
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Tue Jul 10 01:50:39 2018

CC: Inherit MemoryCoordinatorClient for LayerTreeHostImpl

Because OnMemoryPressure will be deprecated eventually, we need to
support MemoryCoordinatorClient for LayerTreeHostImpl as well.

Bug: 839687
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I2f2b032ab165d5c1c8fc0a9dacea097533122739
Reviewed-on: https://chromium-review.googlesource.com/1122058
Reviewed-by: Eric Karl <ericrk@chromium.org>
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Cr-Commit-Position: refs/heads/master@{#573592}
[modify] https://crrev.com/0bb78714c036b0f62d9f65a9798deda803ebc4c4/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/0bb78714c036b0f62d9f65a9798deda803ebc4c4/cc/trees/layer_tree_host_impl.h

Project Member

Comment 49 by bugdroid1@chromium.org, Jul 26

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/069adb163044004e3f0676d97baac83a2867050c

commit 069adb163044004e3f0676d97baac83a2867050c
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Thu Jul 26 04:09:58 2018

Re-land "CC: Make LayerTreeHostImpl::OnMemoryPressure work for the desktop as well"

This reverts commit a49d91b6992b8d3357efeb32a2005d5b11ada26a.

The original commit made SessionRestoreTest.MemoryPressureLoadsNotAllTabs crash.
According to my investigation, it was caused by calling SingleThreadProxy::OnCanDrawStateChanged
on the main thread. To avoid it, this CL makes LayerTreeHostImpl::OnMemoryPressure call
OnPurgeMemory on the impl thread through the Proxy.

Bug: 839687, 860090
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ifaef5bcb4029da8645f393d85313be4637aea994
Reviewed-on: https://chromium-review.googlesource.com/1130567
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Reviewed-by: enne <enne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#578192}
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/trees/proxy_impl.cc
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/trees/proxy_impl.h
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/069adb163044004e3f0676d97baac83a2867050c/cc/trees/single_thread_proxy.h

Project Member

Comment 50 by bugdroid1@chromium.org, Jul 27

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/16e40cf089e4aded09b1b5ad33b49ceb8bcbb632

commit 16e40cf089e4aded09b1b5ad33b49ceb8bcbb632
Author: Gyuyoung Kim <gyuyoung.kim@lge.com>
Date: Fri Jul 27 21:38:26 2018

CC: Add LayerTreeHostImplTest.OnMemoryPressure test again

Below commit removed the test by mistake. So this CL adds it again.

Surface synchronization: Make sure viewport size is updated with DSF/LocalSurfaceId
e65f318c604d2159e65edda605863b98d36e2073

Bug: 839687
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Iae469948a3a88fb09fa9828e3e2e4d3cd1557681
Reviewed-on: https://chromium-review.googlesource.com/1152709
Reviewed-by: vmpstr <vmpstr@chromium.org>
Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
Cr-Commit-Position: refs/heads/master@{#578811}
[modify] https://crrev.com/16e40cf089e4aded09b1b5ad33b49ceb8bcbb632/cc/trees/layer_tree_host_impl_unittest.cc

Project Member

Comment 51 by bugdroid1@chromium.org, Jul 31

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b555ecd8a69a1cbd27c8a604a7a520d40970480b

commit b555ecd8a69a1cbd27c8a604a7a520d40970480b
Author: Ned Nguyen <nednguyen@google.com>
Date: Tue Jul 31 14:02:50 2018

Revert "Re-land "CC: Make LayerTreeHostImpl::OnMemoryPressure work for the desktop as well""

This reverts commit 069adb163044004e3f0676d97baac83a2867050c.

Reason for revert: crash rendering.mobile/microsoft_fireflies benchmark test on chromium.perf/android-nexus5x-perf 

BUG:869188

Original change's description:
> Re-land "CC: Make LayerTreeHostImpl::OnMemoryPressure work for the desktop as well"
> 
> This reverts commit a49d91b6992b8d3357efeb32a2005d5b11ada26a.
> 
> The original commit made SessionRestoreTest.MemoryPressureLoadsNotAllTabs crash.
> According to my investigation, it was caused by calling SingleThreadProxy::OnCanDrawStateChanged
> on the main thread. To avoid it, this CL makes LayerTreeHostImpl::OnMemoryPressure call
> OnPurgeMemory on the impl thread through the Proxy.
> 
> Bug: 839687, 860090
> Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
> Change-Id: Ifaef5bcb4029da8645f393d85313be4637aea994
> Reviewed-on: https://chromium-review.googlesource.com/1130567
> Commit-Queue: Gyuyoung Kim <gyuyoung.kim@lge.com>
> Reviewed-by: enne <enne@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#578192}

TBR=enne@chromium.org,ericrk@chromium.org,gyuyoung.kim@lge.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: 839687, 860090
Change-Id: I0468da7dd808d545b4a6fe9d59f94d5427e40228
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://chromium-review.googlesource.com/1156564
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#579392}
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/test/fake_layer_tree_host_impl_client.h
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/trees/proxy_impl.cc
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/trees/proxy_impl.h
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/b555ecd8a69a1cbd27c8a604a7a520d40970480b/cc/trees/single_thread_proxy.h

Cc: -gyuyoung...@lge.com
Owner: gyuyoung...@lge.com
Cc: -eakuefner@chromium.org
Cc: gyuyo...@igalia.com
Cc: -nednguyen@chromium.org
Components: Speed>Benchmarks

Sign in to add a comment