New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 801331 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocking:
issue 744658



Sign in to add a comment

Refactor gpu tests that fakes GPUInfo to trigger a specific blacklist entry

Project Member Reported by zmo@chromium.org, Jan 11 2018

Issue description

Such design is fragile because that entry can easily be deleted.
Such design is also intrusive because it bypasses real code path and hack into the pipeline.

A better design, is to have entries that are not triggered in normal run, but only triggered in tests.

The plan is to add a "test_group" field to GPU control list. By default if this field doesn't exist in an entry, it's value is zero, and that's the chrome's lists. If an entry is specified to a non-zero "test_group" = ii, and Chrome runs with --gpu-blacklist-test-group=ii, then the normal entries are ignored, and only that entry is active.
 

Comment 1 by zmo@chromium.org, Jan 11 2018

Blocking: 744658
Project Member

Comment 2 by bugdroid1@chromium.org, Jan 12 2018

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

commit 0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca
Author: Zhenyao Mo <zmo@chromium.org>
Date: Fri Jan 12 03:43:08 2018

Add a test_group field for GPU blacklist and driver bug list.

This is not used yet, but with a unittest to make sure the mechanism works.

BUG= 801331 
TEST=gpu_unittests
R=kbr@chromium.org

Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: Iac97dd0a73a2c0275f9645eac79a12e948c05135
Reviewed-on: https://chromium-review.googlesource.com/862729
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#528870}
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list.cc
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list.h
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list_format.txt
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list_testing.json
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list_testing_arrays_and_structs_autogen.h
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list_testing_autogen.cc
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list_testing_entry_enums_autogen.h
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/gpu_control_list_unittest.cc
[modify] https://crrev.com/0a3f40f1de12ebb6e91d51c73d71e42d0d8680ca/gpu/config/process_json.py

Project Member

Comment 3 by bugdroid1@chromium.org, Jan 13 2018

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

commit 137211248c617934d6fa769aaac9b4a6bcf43436
Author: Zhenyao Mo <zmo@chromium.org>
Date: Sat Jan 13 03:20:34 2018

Use GPU list test groups in gpu_process Telemetry tests.

BUG= 801331 
TEST=GPU bots
R=kbr@chromium.org

Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I1eb337e5b41aa7b74d0aaa27c0d064f1fed7ba78
Reviewed-on: https://chromium-review.googlesource.com/865814
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529154}
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/content/browser/gpu/gpu_process_host.cc
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/content/test/gpu/gpu_tests/gpu_process_integration_test.py
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/gpu/config/gpu_driver_bug_list.json
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/gpu/config/gpu_switches.cc
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/gpu/config/gpu_switches.h
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/gpu/config/gpu_util.cc
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/gpu/config/gpu_util_unittest.cc
[modify] https://crrev.com/137211248c617934d6fa769aaac9b4a6bcf43436/gpu/config/software_rendering_list.json

Project Member

Comment 4 by bugdroid1@chromium.org, Jan 17 2018

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

commit bc1acbd274248e6a661069e40b2fbb28cad2e8b2
Author: Zhenyao Mo <zmo@chromium.org>
Date: Wed Jan 17 04:32:09 2018

Remove GPUInfo testing commandline switches.

Old testing mechanism uses these switches to fake GPUInfo.

The new one uses |test_group| to add specific entries that are only triggered
in testing.

BUG= 801331 
TEST=gpu bots
R=kbr@chromium.org

Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: I86471daca011140dc4e0a96421eeaba496d27136
Reviewed-on: https://chromium-review.googlesource.com/868960
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Commit-Queue: Zhenyao Mo <zmo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529606}
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/content/browser/gpu/gpu_data_manager_impl_private.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/content/browser/gpu/gpu_process_host.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/content/test/gpu/gpu_tests/gpu_process_expectations.py
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/content/test/gpu/gpu_tests/gpu_process_integration_test.py
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_info_collector.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_info_collector_android.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_info_collector_linux.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_info_collector_unittest.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_switches.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_switches.h
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_util.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/gpu_util_unittest.cc
[modify] https://crrev.com/bc1acbd274248e6a661069e40b2fbb28cad2e8b2/gpu/config/software_rendering_list.json

Comment 5 by zmo@chromium.org, Jan 17 2018

Status: Fixed (was: Assigned)

Sign in to add a comment