Implement new WebGL stencil validation rules |
||||||||
Issue descriptionPer discussion in the WebGL working group, the validation rules for the stencil separate mask and reference values need to be updated. https://www.khronos.org/registry/webgl/specs/latest/1.0/#6.11 Roughly speaking: they need to take into account the number of bits in the current framebuffer's stencil buffer. The WRITEMASKs and VALUE_MASKs need to be and'ed with the number of bits currently in the stencil buffer. The REFs need to be clamped to the maximum representable value for the current stencil buffer (0 if no stencil bits, 255 if 8 stencil bits). Currently these values are compared with no regard to the number of bits in the stencil buffer and that's causing compatibility problems with ANGLE's attempts to obey the OpenGL ES 2.0 spec. See discussion here: https://github.com/KhronosGroup/WebGL/pull/2583 Resolving this is urgent -- it's preventing partners from building their WebGL implementations on top of ANGLE.
,
Jan 31 2018
Thanks to sunnyps@ for a huge hint about using Windbg! VS isn't installed yet on my workstation so that was the only available debugging tool. There was a mismatch between Windbg (it was in 64-bit mode) so attaching to my 32-bit build wasn't giving legal stack traces when catching the problem. With the following commands:
.effmach x86
k
we got the following stack trace.
It's not really surprising, in that it's related to framebuffer validation, but it is strange that the assertion seems to be:
ASSERT(attachment.isAttached());
Here's the stack trace in my build.
0:000> .effmach
Effective machine: x64 (AMD64)
0:000> .effmach x86
Effective machine: x86 compatible (x86)
0:000:x86> k
# ChildEBP RetAddr
00 0053d5fc 55f23b6b libGLESv2!gl::Framebuffer::formsRenderingFeedbackLoopWith+0x1e9 [C:\src\chrome\src\third_party\angle\src\libANGLE\Framebuffer.cpp @ 1839]
01 0053dfac 55f1ba3b libGLESv2!gl::ValidateDrawBase+0x6d4 [C:\src\chrome\src\third_party\angle\src\libANGLE\validationES.cpp @ 2613]
02 0053e260 55f0fad3 libGLESv2!gl::ValidateDrawArraysCommon+0x6c [C:\src\chrome\src\third_party\angle\src\libANGLE\validationES.cpp @ 2661]
03 0053e27c 55e9eda2 libGLESv2!gl::ValidateDrawArrays+0x16 [C:\src\chrome\src\third_party\angle\src\libANGLE\validationES2.cpp @ 5839]
*** WARNING: Unable to verify checksum for gles2.dll
04 0053e2a4 5f429f3e libGLESv2!gl::DrawArrays+0x36 [C:\src\chrome\src\third_party\angle\src\libGLESv2\entry_points_gles_1_0_autogen.cpp @ 665]
05 0053e2b8 5f43909a gles2!gpu::gles2::GLES2DecoderPassthroughImpl::DoDrawArrays+0x1a [C:\src\chrome\src\gpu\command_buffer\service\gles2_cmd_decoder_passthrough_doers.cc @ 1025]
06 0053e2cc 5f41d170 gles2!gpu::gles2::GLES2DecoderPassthroughImpl::HandleDrawArrays+0x14 [C:\src\chrome\src\gpu\command_buffer\service\gles2_cmd_decoder_passthrough_handlers.cc @ 121]
07 0053e2f8 5f41ccbd gles2!gpu::gles2::GLES2DecoderPassthroughImpl::DoCommandsImpl<0>+0xc0 [C:\src\chrome\src\gpu\command_buffer\service\gles2_cmd_decoder_passthrough.cc @ 531]
*** WARNING: Unable to verify checksum for gpu.dll
08 0053e310 61377422 gles2!gpu::gles2::GLES2DecoderPassthroughImpl::DoCommands+0x21 [C:\src\chrome\src\gpu\command_buffer\service\gles2_cmd_decoder_passthrough.cc @ 472]
*** WARNING: Unable to verify checksum for gpu_ipc_service.dll
09 0053e450 58565e32 gpu!gpu::CommandBufferService::Flush+0x168 [C:\src\chrome\src\gpu\command_buffer\service\command_buffer_service.cc @ 93]
0a 0053e574 58565c03 gpu_ipc_service!gpu::CommandBufferStub::OnAsyncFlush+0x13e [C:\src\chrome\src\gpu\ipc\service\command_buffer_stub.cc @ 634]
0b (Inline) -------- gpu_ipc_service!base::DispatchToMethodImpl+0x17 [C:\src\chrome\src\base\tuple.h @ 52]
0c (Inline) -------- gpu_ipc_service!base::DispatchToMethod+0x17 [C:\src\chrome\src\base\tuple.h @ 60]
0d (Inline) -------- gpu_ipc_service!IPC::DispatchToMethod+0x17 [C:\src\chrome\src\ipc\ipc_message_templates.h @ 51]
0e 0053e5d8 58564389 gpu_ipc_service!IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta,std::tuple<int,unsigned int,bool>,void>::Dispatch<gpu::CommandBufferStub,gpu::CommandBufferStub,void,void (gpu::CommandBufferStub::*)(int, unsigned int, bool) __attribute__((thiscall))>+0x71 [C:\src\chrome\src\ipc\ipc_message_templates.h @ 145]
0f 0053e6c0 5857113d gpu_ipc_service!gpu::CommandBufferStub::OnMessageReceived+0x25f [C:\src\chrome\src\gpu\ipc\service\command_buffer_stub.cc @ 296]
10 0053e6d4 5856f6a7 gpu_ipc_service!gpu::GpuChannel::HandleMessageHelper+0x2f [C:\src\chrome\src\gpu\ipc\service\gpu_channel.cc @ 526]
11 0053e7c4 5857281c gpu_ipc_service!gpu::GpuChannel::HandleMessage+0x11f [C:\src\chrome\src\gpu\ipc\service\gpu_channel.cc @ 494]
12 (Inline) -------- gpu_ipc_service!base::internal::FunctorTraits<void (gpu::GpuChannel::*)(const IPC::Message &) __attribute__((thiscall)),void>::Invoke+0x12 [C:\src\chrome\src\base\bind_internal.h @ 211]
13 (Inline) -------- gpu_ipc_service!base::internal::InvokeHelper<1,void>::MakeItSo+0x2d [C:\src\chrome\src\base\bind_internal.h @ 314]
14 (Inline) -------- gpu_ipc_service!base::internal::Invoker<base::internal::BindState<void (gpu::GpuChannel::*)(const IPC::Message &) __attribute__((thiscall)),base::WeakPtr<gpu::GpuChannel>,IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta> >,void ()>::RunImpl+0x30 [C:\src\chrome\src\base\bind_internal.h @ 368]
15 0053e7e0 6137eedc gpu_ipc_service!base::internal::Invoker<base::internal::BindState<void (gpu::GpuChannel::*)(const IPC::Message &) __attribute__((thiscall)),base::WeakPtr<gpu::GpuChannel>,IPC::MessageT<GpuCommandBufferMsg_AsyncFlush_Meta> >,void ()>::RunOnce+0x3a [C:\src\chrome\src\base\bind_internal.h @ 340]
16 0053e7f8 6137e805 gpu!base::OnceCallback<void ()>::Run+0x2c [C:\src\chrome\src\base\callback.h @ 65]
17 0053e944 6a06bda7 gpu!gpu::Scheduler::RunNextTask+0x353 [C:\src\chrome\src\gpu\command_buffer\service\scheduler.cc @ 527]
18 (Inline) -------- base!base::OnceCallback<void ()>::Run+0x46 [C:\src\chrome\src\base\callback.h @ 65]
19 0053ea68 6a0abf99 base!base::debug::TaskAnnotator::RunTask+0xe7 [C:\src\chrome\src\base\debug\task_annotator.cc @ 53]
1a 0053eb3c 6a0b0de7 base!base::internal::IncomingTaskQueue::RunTask+0x69 [C:\src\chrome\src\base\message_loop\incoming_task_queue.cc @ 124]
1b 0053ec64 6a0b1500 base!base::MessageLoop::RunTask+0x207 [C:\src\chrome\src\base\message_loop\message_loop.cc @ 399]
1c 0053ed40 6a0b1778 base!base::MessageLoop::DeferOrRunPendingTask+0xa0 [C:\src\chrome\src\base\message_loop\message_loop.cc @ 411]
1d 0053eea8 6a0b3f41 base!base::MessageLoop::DoWork+0x208 [C:\src\chrome\src\base\message_loop\message_loop.cc @ 455]
1e 0053eec4 6a0b0649 base!base::MessagePumpDefault::Run+0xb1 [C:\src\chrome\src\base\message_loop\message_pump_default.cc @ 38]
1f 0053ef9c 6a0fc06c base!base::MessageLoop::Run+0xa9 [C:\src\chrome\src\base\message_loop\message_loop.cc @ 352]
*** WARNING: Unable to verify checksum for content.dll
20 0053f070 618ce05a base!base::RunLoop::Run+0xcc [C:\src\chrome\src\base\run_loop.cc @ 133]
21 0053f28c 62d44d24 content!content::GpuMain+0x3cc [C:\src\chrome\src\content\gpu\gpu_main.cc @ 345]
22 0053f35c 62d453dd content!content::RunNamedProcessTypeMain+0x94 [C:\src\chrome\src\content\app\content_main_runner.cc @ 422]
*** WARNING: Unable to verify checksum for embedder.dll
23 0053f458 59e0c444 content!content::ContentMainRunnerImpl::Run+0x123 [C:\src\chrome\src\content\app\content_main_runner.cc @ 713]
24 0053f570 62d44c15 embedder!service_manager::Main+0x2bb [C:\src\chrome\src\services\service_manager\embedder\main.cc @ 456]
*** WARNING: Unable to verify checksum for chrome.dll
25 0053f5b4 646f92d2 content!content::ContentMain+0x35 [C:\src\chrome\src\content\app\content_main.cc @ 19]
26 0053f640 00bcf35d chrome!ChromeMain+0x14e [C:\src\chrome\src\chrome\app\chrome_main.cc @ 132]
27 0053f6cc 00bccad0 chrome_exe!MainDllLoader::Launch+0x237 [C:\src\chrome\src\chrome\app\main_dll_loader_win.cc @ 199]
28 0053f844 00c8dec8 chrome_exe!wWinMain+0x580 [C:\src\chrome\src\chrome\app\chrome_exe_main_win.cc @ 231]
29 (Inline) -------- chrome_exe!invoke_main+0x1a [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl @ 118]
2a 0053f890 73da62c4 chrome_exe!__scrt_common_main_seh+0xf6 [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl @ 283]
2b 0053f8a4 77310f79 KERNEL32!BaseThreadInitThunk+0x24
2c 0053f8ec 77310f44 ntdll_772b0000!__RtlUserThreadStart+0x2f
2d 0053f8fc 00000000 ntdll_772b0000!_RtlUserThreadStart+0x1b
Taking this back to try to get it over the finish line.
,
Feb 21 2018
Kai said offline that he'd pick this up and figure out why this assertion failure was being hit, specifically whether it predates the small changes to the stencil validation, and finish it. Thanks Kai.
,
Mar 6 2018
,
Mar 6 2018
The assertion I'm seeing is this one: ASSERT(dsState.stencilBackWritemask == dsState.stencilWritemask); (not the isAttached one). This info actually popped up in a dialog box when I ran my debug build (though without a stack trace).
,
Mar 6 2018
(This is a debug build, which I'm sure is why the dialog is enabled.)
,
Mar 8 2018
I made a PR https://github.com/jdashg/WebGL/pull/4 into Jeff's PR https://github.com/KhronosGroup/WebGL/pull/2583 and have an ANGLE patch up here: https://github.com/KhronosGroup/WebGL/pull/2583 . I didn't have to make any changes to Ken's Chromium patch https://chromium-review.googlesource.com/890606 .
,
Mar 26 2018
The following revision refers to this bug: https://chromium.googlesource.com/angle/angle/+/b9f9250486abdfa1f00355daf95430838b42b662 commit b9f9250486abdfa1f00355daf95430838b42b662 Author: Ken Russell <kbr@chromium.org> Date: Mon Mar 26 19:42:57 2018 Update stencil validation rules for WebGL Based on kbr's patch: https://chromium-review.googlesource.com/c/angle/angle/+/890605 Implements new rules in this revised WebGL conformance test: https://github.com/KhronosGroup/WebGL/pull/2583 BUG= chromium:806557 Change-Id: I84701dd7156f0bc4a45ba68e63cb962d2d54c2e5 Reviewed-on: https://chromium-review.googlesource.com/952567 Commit-Queue: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Corentin Wallez <cwallez@chromium.org> [modify] https://crrev.com/b9f9250486abdfa1f00355daf95430838b42b662/src/libANGLE/renderer/d3d/d3d11/StateManager11.cpp [modify] https://crrev.com/b9f9250486abdfa1f00355daf95430838b42b662/src/libANGLE/Framebuffer.cpp [modify] https://crrev.com/b9f9250486abdfa1f00355daf95430838b42b662/src/tests/gl_tests/WebGLCompatibilityTest.cpp [modify] https://crrev.com/b9f9250486abdfa1f00355daf95430838b42b662/src/libANGLE/validationES.cpp
,
Mar 26 2018
-> kbr to land https://chromium-review.googlesource.com/c/chromium/src/+/890606 which I think should still land cleanly. It should probably be landed after a WebGL roll that includes https://github.com/KhronosGroup/WebGL/pull/2583
,
Mar 27 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5c849d31db87f160aed138c694ea614bf6d5f1d9 commit 5c849d31db87f160aed138c694ea614bf6d5f1d9 Author: angle-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <angle-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Date: Tue Mar 27 03:28:55 2018 Roll src/third_party/angle/ 822a84b19..84fdc62c6 (8 commits) https://chromium.googlesource.com/angle/angle.git/+log/822a84b1959f..84fdc62c6160 $ git log 822a84b19..84fdc62c6 --date=short --no-merges --format='%ad %ae %s' 2018-03-19 jiawei.shao Fix a compile error when ANGLE_D3D9EX == ANGLE_DISABLED 2017-10-03 geofflang Implement robust resource initialization for OpenGL. 2018-03-20 oetuaho Clean up checkCanBeLValue 2018-01-27 kbr Update stencil validation rules for WebGL 2018-03-19 oetuaho Rely on hash to check for some mangled name matches 2018-03-23 oetuaho Clarify aliasing rules in CHROMIUM_bind_uniform_location 2018-03-26 geofflang Check result of D3D11 map operation in Blit11::copyAndConvert. 2018-03-22 oetuaho Move ReplaceVariable to tree_util directory Created with: roll-dep src/third_party/angle BUG=chromium:693090, chromium:806557 , chromium:823856 , chromium:825503 The AutoRoll server is located here: https://angle-chromium-roll.skia.org Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel TBR=lucferron@chromium.org Change-Id: Ib864a0492b29de58564d5522977c11d6623dad4a Reviewed-on: https://chromium-review.googlesource.com/981675 Reviewed-by: angle-chromium-autoroll <angle-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Commit-Queue: angle-chromium-autoroll <angle-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#545968} [modify] https://crrev.com/5c849d31db87f160aed138c694ea614bf6d5f1d9/DEPS
,
Mar 27 2018
Kai, thanks for pushing the ANGLE changes through. Could you do me a favor and take over https://chromium-review.googlesource.com/890606 too and roll WebGL conformance? Have too many small issues to track right now. Thanks.
,
Apr 9 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/eb70ffc00e568cd5c6b7ebd52142697fa58d0573 commit eb70ffc00e568cd5c6b7ebd52142697fa58d0573 Author: Kai Ninomiya <kainino@chromium.org> Date: Mon Apr 09 20:41:33 2018 Roll WebGL da5abe6..aef0b3a https://chromium.googlesource.com/external/khronosgroup/webgl.git/+log/da5abe6..aef0b3a Bug: 806557 , 829541 , 830046 Change-Id: I2c1b6f58e8005094f3174b7c9a228a67ee2d379b Cq-Include-Trybots: master.tryserver.chromium.win:win_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_angle_rel_ng;master.tryserver.chromium.angle:win_angle_rel_ng Reviewed-on: https://chromium-review.googlesource.com/996896 Commit-Queue: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Cr-Commit-Position: refs/heads/master@{#549265} [modify] https://crrev.com/eb70ffc00e568cd5c6b7ebd52142697fa58d0573/DEPS [modify] https://crrev.com/eb70ffc00e568cd5c6b7ebd52142697fa58d0573/content/test/gpu/gpu_tests/webgl2_conformance_expectations.py [modify] https://crrev.com/eb70ffc00e568cd5c6b7ebd52142697fa58d0573/content/test/gpu/gpu_tests/webgl_conformance_revision.txt
,
Apr 14 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8e16133137af8deb02ac9b1798f2b6afb3a33095 commit 8e16133137af8deb02ac9b1798f2b6afb3a33095 Author: Kai Ninomiya <kainino@chromium.org> Date: Sat Apr 14 02:36:50 2018 Add GLVersionInfo.is_d3d to detect ANGLE-on-D3D Reviewed existing usages of is_angle to make sure they didn't need to be changed to is_d3d. Tests: Service/FeatureInfoTest.InitializeWithANGLED3D9Ex Service/FeatureInfoTest.InitializeWithANGLED3D11 Service/FeatureInfoTest.InitializeWithANGLEOpenGL Bug: 806557 Change-Id: Iaf582eaa02cdda7c3e78b0359578cf89680164ba Reviewed-on: https://chromium-review.googlesource.com/1011357 Commit-Queue: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Cr-Commit-Position: refs/heads/master@{#550864} [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/gpu/command_buffer/service/feature_info_unittest.cc [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/gpu/command_buffer/service/gles2_cmd_decoder.cc [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/ui/gl/gl_version_info.cc [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/ui/gl/gl_version_info.h
,
Apr 16 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f1c92daa94a68255e7ae854d6129dbce4e43d2e5 commit f1c92daa94a68255e7ae854d6129dbce4e43d2e5 Author: Kai Ninomiya <kainino@chromium.org> Date: Mon Apr 16 20:54:33 2018 Update WebGL's stencil validation rules WebGL (Blink) now delegates the validation of the stencil state to lower levels. This updates the command buffer to implement the new validation rules. ANGLE already implements the new validation rules, so the passthrough command buffer already passes. Patch started by kbr here: https://chromium-review.googlesource.com/c/chromium/src/+/890606 Test: conformance/misc/webgl-specific-stencil-settings.html Bug: 806557 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I1d2bc0fd346c5d3fa1d736638e39d97297915a91 Reviewed-on: https://chromium-review.googlesource.com/992862 Commit-Queue: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Cr-Commit-Position: refs/heads/master@{#551108} [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/content/test/gpu/gpu_tests/webgl2_conformance_expectations.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/content/test/gpu/gpu_tests/webgl_conformance_expectations.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/build_cmd_buffer_lib.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/build_gles2_cmd_buffer.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/common/capabilities.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/common/gles2_cmd_utils.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/common/gles2_cmd_utils.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/context_state.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/feature_info.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/feature_info.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/gles2_cmd_decoder.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/ipc/common/gpu_command_buffer_traits_multi.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
,
Apr 16 2018
,
Apr 17 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/8e16133137af8deb02ac9b1798f2b6afb3a33095 commit 8e16133137af8deb02ac9b1798f2b6afb3a33095 Author: Kai Ninomiya <kainino@chromium.org> Date: Sat Apr 14 02:36:50 2018 Add GLVersionInfo.is_d3d to detect ANGLE-on-D3D Reviewed existing usages of is_angle to make sure they didn't need to be changed to is_d3d. Tests: Service/FeatureInfoTest.InitializeWithANGLED3D9Ex Service/FeatureInfoTest.InitializeWithANGLED3D11 Service/FeatureInfoTest.InitializeWithANGLEOpenGL Bug: 806557 Change-Id: Iaf582eaa02cdda7c3e78b0359578cf89680164ba Reviewed-on: https://chromium-review.googlesource.com/1011357 Commit-Queue: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Zhenyao Mo <zmo@chromium.org> Cr-Commit-Position: refs/heads/master@{#550864} [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/gpu/command_buffer/service/feature_info_unittest.cc [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/gpu/command_buffer/service/gles2_cmd_decoder.cc [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/ui/gl/gl_version_info.cc [modify] https://crrev.com/8e16133137af8deb02ac9b1798f2b6afb3a33095/ui/gl/gl_version_info.h
,
Apr 17 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f1c92daa94a68255e7ae854d6129dbce4e43d2e5 commit f1c92daa94a68255e7ae854d6129dbce4e43d2e5 Author: Kai Ninomiya <kainino@chromium.org> Date: Mon Apr 16 20:54:33 2018 Update WebGL's stencil validation rules WebGL (Blink) now delegates the validation of the stencil state to lower levels. This updates the command buffer to implement the new validation rules. ANGLE already implements the new validation rules, so the passthrough command buffer already passes. Patch started by kbr here: https://chromium-review.googlesource.com/c/chromium/src/+/890606 Test: conformance/misc/webgl-specific-stencil-settings.html Bug: 806557 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel Change-Id: I1d2bc0fd346c5d3fa1d736638e39d97297915a91 Reviewed-on: https://chromium-review.googlesource.com/992862 Commit-Queue: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Cr-Commit-Position: refs/heads/master@{#551108} [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/content/test/gpu/gpu_tests/webgl2_conformance_expectations.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/content/test/gpu/gpu_tests/webgl_conformance_expectations.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/build_cmd_buffer_lib.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/build_gles2_cmd_buffer.py [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/common/capabilities.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/common/gles2_cmd_utils.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/common/gles2_cmd_utils.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/context_state.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/feature_info.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/feature_info.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/gles2_cmd_decoder.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/command_buffer/service/gles2_cmd_decoder_autogen.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/gpu/ipc/common/gpu_command_buffer_traits_multi.h [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.cc [modify] https://crrev.com/f1c92daa94a68255e7ae854d6129dbce4e43d2e5/third_party/blink/renderer/modules/webgl/webgl_rendering_context_base.h
,
Oct 30
The following revision refers to this bug: https://chromium.googlesource.com/angle/angle/+/9a79c8893bfc2905e14d51e8256660aba853ff7b commit 9a79c8893bfc2905e14d51e8256660aba853ff7b Author: Shahbaz Youssefi <syoussefi@chromium.org> Date: Tue Oct 30 21:18:51 2018 Run DifferentStencilMasks tests This test was added and referenced, but was actually never added to the list of files to be compiled. The most recent validation work has been regarding WebGL. This test verifies the behavior when different stencil masks are set for front and back faces, which is unsupported in D3D and disallowed in WebGL. In the interest of running the test on all back ends, and that the validation was modified last to improve WebGL support, the test runs in WebGL compatibility mode. Bug: chromium:806557 Change-Id: I7615b9fc18d4203ed342e23881bea6bdd9b3864c Reviewed-on: https://chromium-review.googlesource.com/c/1306256 Reviewed-by: Kai Ninomiya <kainino@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> [modify] https://crrev.com/9a79c8893bfc2905e14d51e8256660aba853ff7b/src/tests/angle_end2end_tests.gni [modify] https://crrev.com/9a79c8893bfc2905e14d51e8256660aba853ff7b/src/tests/gl_tests/DifferentStencilMasksTest.cpp
,
Oct 31
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b795666f9151ed7cca128c6a31fdfb11f6a7a3f2 commit b795666f9151ed7cca128c6a31fdfb11f6a7a3f2 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Wed Oct 31 03:18:20 2018 Roll src/third_party/angle af9dd6080188..193a284d34d2 (6 commits) https://chromium.googlesource.com/angle/angle.git/+log/af9dd6080188..193a284d34d2 git log af9dd6080188..193a284d34d2 --date=short --no-merges --format='%ad %ae %s' 2018-10-30 jmadill@chromium.org Vulkan: Split vk::CommandGraphResource. 2018-10-30 jmadill@chromium.org Make perf tests faster in correctness-only mode. 2018-10-30 syoussefi@chromium.org Run DifferentStencilMasks tests 2018-10-30 jmadill@chromium.org Try to reduce variance in angle_perftests. 2018-10-30 jmadill@chromium.org Vulkan: Enable more perf tests. 2018-10-30 jmadill@chromium.org Vulkan: Add warnings for cache struct packing. Created with: gclient setdep -r src/third_party/angle@193a284d34d2 The AutoRoll server is located here: https://autoroll.skia.org/r/angle-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel BUG= chromium:806557 TBR=ynovikov@chromium.org Change-Id: Ib1b19719f3892ec093455e3a6bbc042457b118fd Reviewed-on: https://chromium-review.googlesource.com/c/1309324 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#604132} [modify] https://crrev.com/b795666f9151ed7cca128c6a31fdfb11f6a7a3f2/DEPS |
||||||||
►
Sign in to add a comment |
||||||||
Comment 1 by kbr@chromium.org
, Jan 28 2018