Log

Author Commit Date CI Message
Chris Dalton ae71cc1c 2025-03-11T16:36:52 Don't destroy blend or color mask state in PLS The browser caches this state, so conditionally destroying it would invalidate the browser's cache. Instead, cache modifications to overridden PLS blend & color mask state in ContextPrivateState, and restore it upon ending PLS. Also update the spec to specify that FRAMEBUFFER_DEFAULT_WIDTH and FRAMEBUFFER_DEFAULT_HEIGHT may be overridden during PLS in ES 3.1. Bug: angleproject:40096838 Change-Id: Ic2c0aa6dc33ada7350e15e27bef22c79ca5f6c7f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6350727 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Chris Dalton <chris@rive.app>
angle-autoroll 6c26ea15 2025-03-17T09:48:51 Roll Chromium from 561dfad17c04 to 995d777c7731 (623 revisions) https://chromium.googlesource.com/chromium/src.git/+log/561dfad17c04..995d777c7731 Disables global constructor/destructor warnings when using GlobalMutex, which started triggering after this Clang roll here: https://chromium-review.googlesource.com/c/chromium/src/+/6354907 src/libANGLE/GlobalMutex.cpp:124:24: error: declaration requires a global constructor 124 | void ANGLE_CONSTRUCTOR AllocateGlobalMutex() src/libANGLE/GlobalMutex.cpp:132:23: error: declaration requires a global destructor 132 | void ANGLE_DESTRUCTOR DeallocateGlobalMutex() If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,syoussefi@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/aafbb3185f..1dc5fbff43 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/8550f0913b..7f1053216c * testing: https://chromium.googlesource.com/chromium/src/testing/+log/51cf51a3cd..35bdf40ed0 * third_party/android_build_tools/error_prone/cipd: PUFyo5eTRLBVraTti00zSIPJ9JJazDE9OU5e-mc6sicC..TKp0LDZjoG40SrElfQevGD9zDvVypBnRPWTzv8bnTw4C * third_party/android_build_tools/lint/cipd: tsOuC8RTor7xvEQGKjf4UUWbOZ6CXLUAWTapMfyjtSIC..vhjMonh9XYLLHAk7HJJI88WCaEq0Wye3mcXRgZto0hgC * third_party/android_build_tools/manifest_merger/cipd: XsYjBCg98jVV1y2tdwYTvXS_V_53hDdGBdsLsI_Cd-AC..pUhXoFF33hA0Ld7PAOJp2fl0HLa6foRELt7yy1i_L9oC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4d2793429f..828df14a60 * third_party/fuchsia-sdk/sdk: version:27.20250308.2.1..version:27.20250315.3.1 * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/f752139824..14489e08b2 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/38d40010d1..dbe04005a2 * third_party/r8/cipd: FiKym6sa--ha6Yuxe-KJYyUo-CPERJJ5FYurwPkrvyoC..OB23bnkEllPjA4Mmlh2kdHOMJGV19SMZobx2U4KGuPIC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/97cf54e65e..c980724668 * third_party/siso/cipd: git_revision:6b0b080aea4fa142b573795daa977e8751947452..git_revision:3a38836e06344016dce6092148a07a114807f9f0 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/d4d0079e13..c82c0e7bb5 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/168fff5a3e..b441f42f7e * tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/d4b64d95f4..f26c92c0db Clang version changed llvmorg-21-init-1655-g7b473dfe:llvmorg-21-init-5118-g52cd27e6 Details: https://chromium.googlesource.com/chromium/src/tools/clang/+/d4d0079e135e52df927a2828f0085e4e90f0de2b..c82c0e7bb5b235463a52234216507466a49c1ba8/scripts/update.py Bug: angleproject:42266550 Change-Id: I96c1952485944e119798eb0f3be4206c7ed321d6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6360302 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Le Hoang Quyen f64a9547 2025-03-15T23:45:33 Metal: remove "Compute" from EnsureComputeShaderInitialized() name Previously this function was named EnsureComputePipelineInitialized() because it would create a compute pipeline. However at some point, the pipeline's creation was moved to a pipeline cache. Thus this function now only creates a shader function. This can be used to create both compute & graphics shader functions so we should remove the "Compute" part from its name. Bug: None Change-Id: I73d101142ec1fc72d150579bc409b1dea3196940 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6357511 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
angle-autoroll 0f7f5c48 2025-03-17T08:01:39 Roll VK-GL-CTS from d742379bbd26 to a10a27282b98 (15 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/d742379bbd26..a10a27282b98 2025-03-14 mateusz.bahyrycz@mobica.com Add support for sparse resources in ray tracing pipeline module 2025-03-14 javed@igalia.com Add logicop tests for float/srgb formats 2025-03-14 zzoon@igalia.com Fix validation errors in Vulkan Video decoding tests. 2025-03-14 michal.jakubek@mobica.com Fix validation error in multiview tests 2025-03-14 tomnom@google.com Add watchdog touch to dEQP-VK.texture.explicit_lod test 2025-03-14 kamil.goras@mobica.com Add testing for GL_PRIMITIVES_SUBMITTED_ARB query. 2025-03-14 marcin.zajac@cognizant.com Sequential timestamps 2025-03-14 marcin.zajac@cognizant.com Mixed primitive restart scenarios 2025-03-14 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.1 into vk-gl-cts/main 2025-03-13 lorenzo@khronosgroup.org Merge remote-tracking branch 'vk-gl-cts/dev/VK_EXT_external_memory_acquire_unmodified' into main 2025-03-12 rgarcia@igalia.com Missing include for std::log2 2025-03-12 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.1 into vk-gl-cts/main 2025-03-12 lorenzo@khronosgroup.org Merge "Merge branch 'dev/VK_EXT_external_memory_metal'" into main 2025-03-12 lorenzo@khronosgroup.org Merge "Merge remote-tracking branch 'vk-gl-cts/dev/VK_KHR_maintenance8'" into main 2025-03-12 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-cts-4.6.6 into vk-gl-cts/main If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-team@google.com,syoussefi@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: syoussefi@google.com Change-Id: I44f5de9308ffc65a1e274f630248ae5f0c61d922 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6360377 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Roman Lavrov 5c2789e0 2025-03-14T15:17:30 Inline Context::uniform* (most of?) these are called exactly once, such as GL_Uniform2f [entry_points_gles_2_0_autogen.cpp] Context::uniform2f [Context.cpp] ProgramExecutable::setUniform2fv [ProgramExecutable.cpp] Note how due to the different translation units each of these becomes a separate function, and the intermediate one (uniform2f) is completely unnecessary as it's only called by GL_Uniform2f. This CL reduces the .so size a bit and improves code locality by avoiding the intermediate functions. Bug: b/383305597 Change-Id: Ia4afe651fabd25e55cd19a30bca71891d3e5a34a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6355328 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Chris Dalton b600a42c 2025-03-13T15:18:40 Remove the PLS allow list All the interactions with render passes have been properly solved now, and there is no longer a need for the allow list. Bug: angleproject:40096838 Change-Id: I0219fb8824820e076c128f10f49c85f0f76270ef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6355312 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Chris Dalton <chris@rive.app>
angle-autoroll fbc2537d 2025-03-14T17:16:41 Manual roll Chromium from 9ae09404c37a to 561dfad17c04 (842 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/9ae09404c37a..561dfad17c04 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,geofflang@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/d6f7e76896..aafbb3185f * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/8e4c89021b..8550f0913b * buildtools/reclient: re_client_version:0.176.0.8c46330a-gomaip..re_client_version:0.177.1.e58c0145-gomaip * testing: https://chromium.googlesource.com/chromium/src/testing/+log/497a8db62c..51cf51a3cd * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/6bcdb6714a..4b0cf6a919 * third_party/android_sdk/public: bCFMX8oYIRJ_tP3tzaPcTKNqOAVdNk5TV_cwMp3GmE8C..gekOVsZjseS1w9BXAT3FsoW__ByGDJYS9DgqesiwKYoC * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/797a4d052f..f752139824 * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/f562a33548..38d40010d1 * third_party/r8/cipd: 24WXWg3zAJPZGWme0lPbExFGluQSRhwM3cT1Ku0DcTwC..FiKym6sa--ha6Yuxe-KJYyUo-CPERJJ5FYurwPkrvyoC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/44273dc032..97cf54e65e * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/3f16a20341..d4d0079e13 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/72b8039311..168fff5a3e * tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/c822e5b16e..d4b64d95f4 No update to Clang. Bug: None Tbr: geofflang@google.com,ynovikov@google.com Change-Id: I132e037278e7c7fff40dd50fadabcb4e9e8cb279 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6357693 Commit-Queue: Geoff Lang <geofflang@chromium.org> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Igor Nazarov c935e06d 2025-02-24T20:13:46 Revert "Vulkan: Fix Wayland surface size queries" This reverts commit a277f1bce563999296620c29d83c760c0fb9763d. Reason for revert: No longer required, because `mIsSurfaceSizedBySwapchain` is always true on Wayland which will provide same behavior as the reverted override methods. It is also a preparation for the follow up change. Bug: angleproject:397848903 Bug: angleproject:40096815 Change-Id: If83ef133b422494d73565068e06e2d6a737f6315 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298737 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Igor Nazarov daaae2bd 2025-02-24T19:36:39 Vulkan: Remove surface caps query from createSwapChain This is mainly a refactoring with minor bug fixes. The `createSwapChain()` is called at initialize and at swapchain recreate. Before recreate there is always `queryAndAdjustSurfaceCaps()` call, which queries current surface sizes and min image count. However, surface capabilities may be queried again from `createSwapChain()` to get compatible present modes and the min image count. Problem is that surface caps `currentExtent` may change after the second query in the `createSwapChain()`, while the `extents` parameter is already calculated. Such situation will violate the specification. To eliminate the possibility of the above problem and to simplify the code, query of compatible present modes is moved to the `queryAndAdjustSurfaceCaps()`. To save performance, `mCompatiblePresentModes` is only updated if swapchain is already invalid (recreate is imminent). Function is now also handles `mEmulatedPreTransform` to further simplify the code. The `mSurfaceCaps` member was replaced with local variable. The `mIsSurfaceSizedBySwapchain` boolean is added instead to check it in the `getUserWidth()`/`getUserHeight()` methods. This also fixes a possible bug (anglebug.com/168327817) on Fuchsia when this expression could be false: mSurfaceCaps.currentExtent.width == kSurfaceSizedBySwapchain This is because previously `queryAndAdjustSurfaceCaps()` updated `mSurfaceCaps` with the values from `getCurrentWindowSize()`. It seems that the bug never happened on practice, otherwise the ASSERT in the same function would fail. The `prepareForAcquireNextSwapchainImage()` is used at initialize instead of `createSwapChain()` to remove code duplication. Fixed (anglebug.com/168327817) checking `mPreTransform` without enabled "enablePreRotateSurfaces" feature. Bug: angleproject:397848903 Bug: angleproject:168327817 Change-Id: I02e8e3b815b30350e12476853d8dcffed3fe7c38 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298736 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Roman Lavrov 8154cfc2 2025-03-13T15:37:17 Inline Framebuffer::getNumViews() On Android it totals ~100 bytes of assembly, and includes a loop which appears to be above clang heuristics thresholds with -O2 so I had to force-inline throughout to get the desired behavior. There are only a few callers so this has almost no effect on the binary size. Bug: b/383305597 Change-Id: Iad3d9120f8b3f072c1db34134de8b3787efc13ca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6351145 Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Mavis Deng 3676ac1f 2025-03-10T17:18:33 Add checks for invalid cases “a[]” and "a[a]" in array parsing Returns empty outSubscripts vector for a[] Adds GL_INVALID_INDEX to outSubscripts for a[a] Bug: angleproject:401979815 Change-Id: Ie18e9bbbec2b15cac69ae048b81f14ab13439400 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6339329 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Auto-Submit: Mavis Deng <mavis.deng@arm.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Mark Lobodzinski f86d0711 2025-03-07T13:30:58 Tests: Add My Talking Angela 2 Trace Test: angle_trace_tests --gtest_filter=*my_talking_angela_2 Bug: b/401473491 Change-Id: Ic0416ba7c6ab3db82865e9da01a69802590f33c1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6352326 Commit-Queue: Cody Northrop <cnorthrop@google.com> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi 00e0b31a 2025-03-10T15:17:50 Vulkan: Don't generate OpTypeSampledImage for sampler buffers That is banned in SPIR-V 1.6. Bug: angleproject:402056128 Change-Id: Ie30880628228b6949632dbe99b85b2abc9e991d3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6340667 Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Chris Dalton fbb1829d 2024-12-08T01:46:39 Allow glClear while PLS is active It just makes sure to not clear any draw buffers that may be in use for pixel local storage. Bug: angleproject:402810076 Bug: angleproject:40096838 Bug: angleproject:42266150 Change-Id: I60a573d5e9e5dbadce12d79e3f4b6fc57747e655 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312336 Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Chris Dalton <chris@rive.app>
Yuxiang Qian 44853559 2025-02-25T17:29:54 Correct GLES renderbuffer default values For GLES renderbuffer, the initial value queried for RGBA bits should be 0, and the component type should be GL_NONE according to spec. Correct the default values on ANGLE now. An end2end test is also added. Bug: angleproject:399693196 Change-Id: If8366b3d2350add917054813d3cb9a6a23727da7 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312514 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 578ee168 2025-03-12T13:50:53 Do not wait for ConfigureNotify event when window is invisible XUnmapWindow does not produce ConfigureNotify event (only UnmapNotify and FocusOut), waiting on this event causes soft lock. Bug: angleproject:40096853 Change-Id: I00e327b15ee09b7dd6c6d3a3f74f589b9b1bc315 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6347282 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
angle-autoroll 9817c211 2025-03-13T10:01:19 Roll vulkan-deps from a6bd78fcdd17 to 552ac332629b (15 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/a6bd78fcdd17..552ac332629b Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/3a50d1708349ab612322edbf911a12faf3ab9664..0051b92b6fff2fd3dbc99b7dae316fa51a7f4767 https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/aad9239b4da66385e7228a95b4530989881c3524..81fd2fce240f5cfaf94879df1e2c75872a321f96 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers/+log/54a521dd130ae1b2f38fef79b09515702d135bdd..ddd2c099be25e3fec7cdc14106c17aca99512082 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/d6b6c5397b09e4bce4437732b0b212ee2cb21cc6..74a6b7dc828078cf2f1524d3947f65a29a1562e9 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: geofflang@google.com Change-Id: Iaea03f87ac830950c98d28ee250cd679a9bfa6a5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6351333 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 99b54c76 2025-03-13T07:00:52 Roll Chromium from e328b75bb980 to 9ae09404c37a (588 revisions) https://chromium.googlesource.com/chromium/src.git/+log/e328b75bb980..9ae09404c37a If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/f45b4e029e..d6f7e76896 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/50e9c3d18e..8e4c89021b * testing: https://chromium.googlesource.com/chromium/src/testing/+log/a0115f79ba..497a8db62c * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/4daee9ef87..54ea9e3a7f * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/7c3087b8a7..4f05e20cbe * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/1b319e32b5..797a4d052f * third_party/r8/cipd: 11pYuy4piGxVlyR9jNjTltLP-QXp6SvMau7_3TQVGCEC..24WXWg3zAJPZGWme0lPbExFGluQSRhwM3cT1Ku0DcTwC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/366817a3ca..44273dc032 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/d7583da45f..eba414c0b9 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/2a37cbd84e..3f16a20341 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/46a8c407c9..72b8039311 * tools/rust: https://chromium.googlesource.com/chromium/src/tools/rust.git/+log/8b154f5837..c822e5b16e * tools/skia_goldctl/linux: J13ggFrJeq6Pl-xd2tjqFBN2EqoV0QUi80LWWs8mMAEC..APex8NBYOhnfjeFcEaMhYTOJRkoS_0rIMBOrzzyIlugC * tools/skia_goldctl/mac_amd64: q99FR0RbkNG0NLGNAOt3FRfp60UDLUtn5NrRdZKbEscC..TnNNXsiS3KR_P2lbXUA1Yf0_6BSAS4pZX6WfGm0R4f8C * tools/skia_goldctl/mac_arm64: lymz8SRhZk7MVJ-Wsm7oZPYTTGBIftQpX1PY-VL4uq8C..0VoEF7F3q_sFg0ZxDGafQWFOf93vgILlQFhFaFS_2n8C * tools/skia_goldctl/win: u4EQxXnBqv_F1Q5-lpjOFoQvXKGNclvJeiONgVCJGq0C..zn7BbUaaCQUaqIlhIh8wi36wjiIYc86G6LnxouR3j50C No update to Clang. Bug: angleproject:389733590 Tbr: geofflang@google.com Change-Id: I3ed827e86b2265208c410bccbe49b3be682a28e6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6350726 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Igor Nazarov ac251fa8 2025-02-24T17:31:58 Vulkan: Remove doDeferredAcquireNextImage ContextVk dependency This is the continuation of the previous CL. After this change `lockSurface()` calls `doDeferredAcquireNextImage()` as the rest of the code do. The `ImageHelper::invalidateSubresourceContentImpl()` required `ContextVk` pointer before this change. The `ContextVk` is only used to print the performance warning when `layerIndex` exceed the maximum count, which is not possible in case of a `WindowSurfaceVk`. Added `layerLimitReachedOut` pointer instead of writing the warning. It is processed in `invalidateSubresource[Stencil]Content()`. Added `invalidateEntireLevel[Stencil]Content()` which do not require `ContextVk` to use in the `WindowSurfaceVk`. Bug: angleproject:397848903 Bug: angleproject:42264593 Change-Id: I58451a4818ad56fa196c3c971df3a5f7793f2bfe Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298735 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Igor Nazarov 2f5a91ba 2025-02-24T17:25:10 Vulkan: Remove checkForOutOfDateSwapchain ContextVk dependency This is the continuation of the previous CL. After this CL it is now possible to call `prepareForAcquireNextSwapchainImage()` from `lockSurface()` that will also do necessary swapchain recreation in case of window resize. These methods required `ContextVk` pointer before this change: - RenderTargetVk::releaseImageAndViews() - replaced with `releaseSwapchainImage()` that does not release framebuffer because Window Surface framebuffers are not managed by the cache. - added `release()` method that does release the framebuffer. - WindowSurfaceVk::releaseSwapchainImages() - use `Renderer::collectGarbage()` instead of `ContextVk::addGarbage()`. - use `ImageHelper::releaseImage()` instead of `ImageHelper::releaseImageFromShareContexts()`. The `finalizeImageLayoutInShareContexts()` was not required since renderpass must be already ended, because swapchain recreate is only possible after present. Removal of `addToPendingImageGarbage()` is not going to cause OOM problems, because repeated swapchain recreate calls are not possible without swap (submissions). Bug: angleproject:397848903 Bug: angleproject:42264593 Change-Id: Iacfa3a144aa980659569b7100be25a44ebb9f0a0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298734 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Amirali Abdolrashidi 3d96268d 2025-03-12T12:48:36 Vulkan: Fix dev mem report feature adding The Vulkan device feature flag for VK_EXT_device_memory_report is currently being queried from the physical device. However, the feature is not added to the device's list of enabled features. This can result in some devices not properly using the feature, e.g., showing 0s instead of the data. * Added the memory report feature flag (mMemoryReportFeatures) as an enabled feature before creating the device when one of the following corresponding ANGLE features are enabled: * logMemoryReportCallbacks * logMemoryReportStats Bug: b/380295966 Bug: angleproject:173636655 Change-Id: I7afad55e2582298ded75762f2cd666c05bb51f3d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6349539 Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov e6a27504 2025-03-07T20:14:50 Vulkan: Swapchain recreate workaround for shared present mode On Android, `vkCreateSwapchainKHR` may return `VK_ERROR_NATIVE_WINDOW_IN_USE_KHR` if use `mLastSwapchain` as an `oldSwapchain` when in shared present mode. This happens on three different devices: SM-G996B (Mali-G78), SM-S921B (Xclipse 940), SM-S921U (Adreno 940). Bug: angleproject:397848903 Bug: angleproject:42262606 Change-Id: I1541c06c254f3e8231b165fb0c53eff5d810e8bd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329488 Commit-Queue: Igor Nazarov <i.nazarov@samsung.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov 354a5463 2025-02-24T16:52:06 Vulkan: Remove recreateSwapchain ContextVk dependency In the upcoming change, swapchain will be invalidated in swap, while recreate deferred until ANI. After such invalidation, `lockSurface()` wold not be possible. Even that currently swapchain may be invalid only after previous recreate failure, this change adds `recreateSwapchain()` call into `lockSurface()` because it is now possible and as a preparation for the upcoming change. The `recreateSwapchain()` is split into `invalidateSwapchain()` and `recreateSwapchain()` methods. The invalidate must be called before the recreate. Bug: angleproject:397848903 Bug: angleproject:42264593 Change-Id: Ida4a98a985f9fbb527cdf8c81c088ae1210f409c Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298733 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Cody Northrop db48967f 2025-03-05T09:07:10 Reland "Add GL_BGRA_EXT as a sized renderable format" This reverts commit 4bfb9da6f98b3e28905cc759a77bff750dfe3ff7. Reason for revert: More mapping fixes for GL backend Original change's description: > Revert "Reland "Add GL_BGRA_EXT as a sized renderable format"" > > This reverts commit 8f2fbbd1a0d16471596afad57c88f950a1ee3032. > > Reason for revert: http://anglebug.com/399913714 > > Original change's description: > > Reland "Add GL_BGRA_EXT as a sized renderable format" > > > > This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0. > > > > Reason for revert: Fixed mapping back to BGRA_EXT for GL backend > > > > Original change's description: > > > Revert "Add GL_BGRA_EXT as a sized renderable format" > > > > > > This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433. > > > > > > Reason for revert: suspect for blocking rolling ANGLE into Chroimum > > > https://chromium-review.googlesource.com/c/chromium/src/+/6283973 > > > https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview > > > > > > Original change's description: > > > > Add GL_BGRA_EXT as a sized renderable format > > > > > > > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable > > > > format. It was apparently always supposed to be, based on the > > > > wording of the spec. > > > > > > > > This CL adds that support and updates expectations, along with a few > > > > extra tests. > > > > > > > > Includes contributions from Robic.Sun@arm.com. > > > > > > > > Test: angle_end2end_tests, angle_deqp_*_tests > > > > Bug: b/42267264 > > > > Bug: angleproject:394384906 > > > > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7 > > > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444 > > > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > > > Commit-Queue: Cody Northrop <cnorthrop@google.com> > > > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > > > > > Bug: b/42267264 > > > Bug: angleproject:394384906 > > > Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2 > > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628 > > > Auto-Submit: Yuly Novikov <ynovikov@chromium.org> > > > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > > > Bug: b/42267264 > > Bug: angleproject:394384906 > > Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699 > > Commit-Queue: Cody Northrop <cnorthrop@google.com> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > Bug: b/42267264 > Bug: angleproject:394384906 > Bug: angleproject:399913714 > Change-Id: I9f79f39a6d9cba3b23c261005bc3e012d70cd1cf > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312977 > Auto-Submit: Cody Northrop <cnorthrop@google.com> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bug: b/42267264 Bug: angleproject:394384906 Bug: angleproject:399913714 Change-Id: Ifc98fcbb0883dc4a55ad358825e9c1935fa26eaa Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6330036 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Kimmo Kinnunen 62bf97d9 2025-03-10T14:23:31 Metal: Fix line loop indexes for primitive restart Use the existing code to generate line strips from line loops. Bug: angleproject:401284933 Change-Id: Ie131199c23b93364fabb8f0dc6766f7e8d5f2b8d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333539 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Geoff Lang <geofflang@chromium.org> Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org>
Igor Nazarov 9f9a0dfd 2025-03-06T21:20:40 Fix framebuffer attachment format sizes query for Surface Surface as framebuffer attachment is always specified and should return valid format sizes even if extents is empty. At the same time, accessing Window surface sizes without previously acquiring next swapchain image (Vulkan backend) may result in outdated values. In other words, without framebuffer synchronization. This change not only fixes the bugs, but also removes dependency on surface size. Test: angle_end2end_tests --gtest_filter=PbufferTest.ZeroSizedSurfaceFormatQuery/* Bug: angleproject:402532204 Bug: angleproject:397848903 Bug: angleproject:42261031 Change-Id: I736a484caf99e0ff306c244ca13e1eb181222e64 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329487 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 39e54f04 2025-03-12T03:01:34 Roll SwiftShader from c12c13839d68 to 5d97d5be883b (1 revision) https://swiftshader.googlesource.com/SwiftShader.git/+log/c12c13839d68..5d97d5be883b 2025-03-11 swiftshader.regress@gmail.com Regres: Update test lists @ c12c1383 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/swiftshader-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in SwiftShader: https://bugs.chromium.org/p/swiftshader/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: geofflang@google.com Use-Permissive-Angle-Pixel-Comparison: True Change-Id: I1c6f2878fb1809428fe83173064952c906347036 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6343827 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll a854ecc2 2025-03-12T10:01:32 Roll vulkan-deps from ace15f53bef9 to a6bd78fcdd17 (7 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/ace15f53bef9..a6bd78fcdd17 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/f53dd6643228967c8ebe89e2738119903f930949..aad9239b4da66385e7228a95b4530989881c3524 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/b0fef0c13b5072253642cf5aca30a82e8d7a620b..d6b6c5397b09e4bce4437732b0b212ee2cb21cc6 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: geofflang@google.com Change-Id: Id16c1535fc6749ddb8ad27a87133bb028b566fd5 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6346296 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll f087f14c 2025-03-12T07:25:08 Roll Chromium from b6ed11afc0b6 to e328b75bb980 (689 revisions) https://chromium.googlesource.com/chromium/src.git/+log/b6ed11afc0b6..e328b75bb980 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/e1f141abd1..f45b4e029e * testing: https://chromium.googlesource.com/chromium/src/testing/+log/839a62417a..a0115f79ba * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/b40b412c52..4daee9ef87 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/53875ab998..6bcdb6714a * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/b86167407e..1b319e32b5 * third_party/r8/cipd: BGYNB46xHask4pPhdBew2BvSMbUQQoEBFTm2BwOW0s0C..11pYuy4piGxVlyR9jNjTltLP-QXp6SvMau7_3TQVGCEC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/b179fe3a63..366817a3ca * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/0ea80f8705..2a37cbd84e * tools/luci-go: git_revision:b7196a984610cef94ac3f0d38d1a9527469bdebc..git_revision:7a44078a668bc9f75dd6e40a332450e76f2f7399 * tools/luci-go: git_revision:b7196a984610cef94ac3f0d38d1a9527469bdebc..git_revision:7a44078a668bc9f75dd6e40a332450e76f2f7399 * tools/luci-go: git_revision:b7196a984610cef94ac3f0d38d1a9527469bdebc..git_revision:7a44078a668bc9f75dd6e40a332450e76f2f7399 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/67e8e4e042..46a8c407c9 * tools/skia_goldctl/linux: iooiiMwZUCMqHCv40mG4S7a86FM-mCHhc43iUkLWqEcC..J13ggFrJeq6Pl-xd2tjqFBN2EqoV0QUi80LWWs8mMAEC * tools/skia_goldctl/mac_amd64: J6jd6q-lIqYw3lwXZqUgINwrOoHMVWs-Qt_LZA3wsN4C..q99FR0RbkNG0NLGNAOt3FRfp60UDLUtn5NrRdZKbEscC * tools/skia_goldctl/mac_arm64: hD1Vv8Z7IQMShv-PK0PEaSkXuaQi3EgzFIY49YR9ApkC..lymz8SRhZk7MVJ-Wsm7oZPYTTGBIftQpX1PY-VL4uq8C * tools/skia_goldctl/win: xa9dza8Y74PPBKEHXdNtCQoVjtZgz1BmvtOM2CygAR8C..u4EQxXnBqv_F1Q5-lpjOFoQvXKGNclvJeiONgVCJGq0C No update to Clang. Bug: None Tbr: geofflang@google.com Change-Id: I7161ed1937e7a2fccf3afef1a7a269d6150eea4f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6346576 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Chris Dalton 97083463 2025-03-10T09:07:16 Polish PLS interactions with xform feedback & QCOM_tiled_rendering For the simplest integration with WebGL, it was decided that glBeginTransformFeedback() and glStartTilingQCOM() should implicitly disable PLS, whereas glBeginPixelLocalStorageANGLE() should fail if either of these modes are active. Bug: angleproject:40096838 Change-Id: I859a496c99c60c5b040c5eac542f43d85872eb30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6339788 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Chris Dalton <chris@rive.app>
Chris Dalton 4b39a6a9 2025-03-08T14:16:29 Generate errors for framebuffer invals during PLS Generate GL_INVALID_OPERATION for InvalidateFramebuffer, InvalidateSubFramebuffer, and DiscardFramebufferEXT (and add them to the PLS allow list so we can test the new validation). This is part of a final preparation before deleting the allow list. Bug: angleproject:40096838 Change-Id: If8ffb9c1998ca739798171ae4643a3c9ad3ee049 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6335750 Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Chris Dalton <chris@rive.app> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxiang Qian bdff6ade 2025-03-10T17:49:35 Correct glGet* values for stencil masks Using CastMaskValue for GL_STENCIL_VALUE_MASK, GL_STENCIL_BACK_VALUE_MASK, GL_STENCIL_WRITEMASK and GL_STENCIL_BACK_WRITEMASK would cast them from 0xFFFFFFFF to 0x7FFFFFFF, which makes glGetInteger* and glGetFloat* return wrong value for them. CastMaskValue is not needed now, so we should delete it. Also, glGetFloat* return value should be positive, so additional cast is added for those masks. Bug: angleproject:399774386 Change-Id: Ibc2a5fd232be25c854b33df513e3cc0c74cfe8a4 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6342590 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Chris Dalton 1ead4cbd 2025-03-07T09:49:21 Allow texture modification commands while PLS is active Just do a little extra validation and bounce modifications if they would modify an active PLS plane. Bug: angleproject:40096838 Change-Id: I6f27951f5d0ef5dfaf23b5a005a2d94a749e2c4f Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6337703 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Chris Dalton <chris@rive.app>
Roman Lavrov 235c0be1 2025-03-07T13:48:48 Fix program cache on relink with glTransformFeedbackVaryings glTransformFeedbackVaryings updates mState.mTransformFeedbackVaryingNames, which was then saved to cache during a post-link that might happen after this was executed. Change ::serialize() to save mState.mExecutable->mTransformFeedbackVaryingNames instead, as according to Shabi this is the intended behavior. Also do the same for isSeparable and transformFeedbackBufferMode. Adds a repro where this led to tfvaryings getting loaded from cache into a new program that didn't specify tfvaryings. This resolves the interaction between these tests executed sequentially (such as with --bot-mode): GLSLTest_ES3.UnsuccessfulRelinkWithBindAttribLocation/ES3_Vulkan MultithreadingTest.ProgramLinkAndBind/ES3_Vulkan Bug: angleproject:401554049 Bug: angleproject:383164783 Change-Id: I66c599bc68c537e0cd47fbb99dd61d1d7a8a2824 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329734 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com>
Igor Nazarov 79faadf7 2025-02-19T16:04:19 Vulkan: Simple WindowSurfaceVk refactoring Changes: - Update `ImageAcquireState` enumeration. - Make `getCurrentWindowSize()` const. Some implementations are now using local `surfaceCaps` variable instead of `mSurfaceCaps`, however this will not affect reset of the logic. - Remove `extentsOut` parameter from `createSurfaceVk()` and call `getCurrentWindowSize()` explicitly only when needed. - Remove `forceSwapchainRecreate` parameter since it is always has false as an argument. - Remove redundant `impl::` namespace. - Make `queryAndAdjustSurfaceCaps()` const. Bug: angleproject:397848903 Change-Id: I955be15fb4709e137f2ad8a165fd04a3fe626fbf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298732 Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Chris Dalton 35ffe55c 2025-03-09T15:00:27 Block framebuffer queries on overridden PLS state Generate an error from glGetFramebufferAttachmentParameteriv() when querying a color attachment that has been overridden by PLS. Bug: angleproject:40096838 Change-Id: I83e68c3527f034f9a24822cf4f57789f81b9b6af Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6338390 Reviewed-by: Kenneth Russell <kbr@chromium.org> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com> Commit-Queue: Chris Dalton <chris@rive.app> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Shahbaz Youssefi 5b343e8f 2025-03-11T11:35:08 Vulkan: Remove support for Stadia Bug: angleproject:42262714 Change-Id: Icae5fe828fe4e0bcd287d297df1bc586708ef86e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6344390 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
Igor Nazarov 668a7a2e 2025-02-19T14:55:49 Revert "Vulkan: Return cached width and height for eglQuerySurface" This reverts commit db833869131eddb36e695717a823a540e3cdc8ba. Reason for revert: Native GLES driver behavior on Android is different from what was tested by "EGLPreRotationSurfaceTest.CheckSurfaceCapabilities" test. More precisely, behavior is different depending if native Window is resided using `ANativeWindow_setBuffersGeometry()` or resized by the user (screen rotation or resizing of a floating window). In case of `ANativeWindow_setBuffersGeometry()` resize (used by tests), surface will have size of the Window up until image is acquired (dequeued). In other words, size will be fixed after draw and will match current Window size until draw. In case of resizing by the user, surface size will be fixed until the next swap. This is the behavior that was tested by the reverted test. Bug: angleproject:397848903 Bug: angleproject:153329980 Change-Id: I8fc8d194c1591aff714dd255acd25392b4963e0d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6298731 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Yuxin Hu d62bc095 2025-03-10T16:01:02 Remove unused VVL skip message Following test angleproject:42265049 MultisampledRenderToTextureES31Test.DrawCopyThenBlendAllAttachmentsMixed/ES3_1_Vulkan no longer fails due to VVL error. Tested on Pixel 8. Remove the outdated VVL suppression. Bug: angleproject:42265049 Change-Id: I6e4ba623439a3705e0b897af0af1d1174ef34854 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6341271 Commit-Queue: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov e0216987 2025-03-04T16:44:31 Preserve window format when resizing on Android On some devices acquiring next swapchain image after window format change (without resize) does not return VK_ERROR_OUT_OF_DATE_KHR. Further rendering into the acquired image and/or presenting that image may produce undefined results. Try to preserve current window format to avoid such problem. Note, window format is automatically set after swapchain create based on the create info imageFormat. Bug: angleproject:397848903 Bug: angleproject:42260362 Change-Id: Ibada10befd2938f1bcf018c399ce8cc015541e60 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6322789 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
angle-autoroll ca3e2abc 2025-03-11T10:01:57 Roll vulkan-deps from b65ddf3969c1 to ace15f53bef9 (9 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/b65ddf3969c1..ace15f53bef9 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/3b495e1450b19dd79c4493ec2fe9698d003e209f..3a50d1708349ab612322edbf911a12faf3ab9664 https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/92f369acac50411450886633fe2749100964391a..f53dd6643228967c8ebe89e2738119903f930949 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/449fc4aa46a7aa1ef635a18c8198e2dbcacafb64..b0fef0c13b5072253642cf5aca30a82e8d7a620b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: geofflang@google.com Change-Id: Ic7951114ca08c62339aad805a2588ee5d5bee50b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6341275 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll baf5d9ed 2025-03-11T08:01:06 Roll VK-GL-CTS from ba86fb950043 to d742379bbd26 (14 revisions) https://chromium.googlesource.com/external/github.com/KhronosGroup/VK-GL-CTS.git/+log/ba86fb950043..d742379bbd26 2025-03-10 yuxinhu@google.com Remove the unused class member 2025-03-10 linyaa@google.com Move class vktApiExternalMemoryTests.cpp::ImageTestConfig 2025-03-10 linyaa@google.com Add member vktApiExternalMemoryTests.cpp:ImageTestConfig::tiling 2025-03-10 ziga@lunarg.com Test framebuffer with image view created with VK_REMAINING_ARRAY_LAYERS 2025-03-10 mateusz.bahyrycz@mobica.com Add support for sparse resources in ray query module 2025-03-10 javed@igalia.com Add tests for mutable formats with sparse resident images 2025-03-10 marcin.zajac@mobica.com Optimizing valid usage flags combinations 2025-03-10 ziga@lunarg.com Fix sType assert in mesh_shader_features_ext test 2025-03-10 jasuarez@igalia.com Fix barrier to read uniform texel buffer 2025-03-10 boris.zanin@amd.com Fix precision-based winding problems in watertightness tests 2025-03-10 rgarcia@igalia.com Add standard sample location variants of sample location tests 2025-03-10 rgarcia@igalia.com Basic tests to make sure index buffer binding persists 2025-03-10 lorenzo@khronosgroup.org Merge vk-gl-cts/vulkan-cts-1.4.1 into vk-gl-cts/main 2025-03-06 lorenzo@khronosgroup.org Merge vk-gl-cts/opengl-es-cts-3.2.12 into vk-gl-cts/main If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vk-gl-cts-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: geofflang@google.com Change-Id: Ia0edef7193e72e40f9dde8070176e07f99015a23 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6342525 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 91bef434 2025-03-11T07:01:53 Roll Chromium from 546a0c348066 to b6ed11afc0b6 (523 revisions) https://chromium.googlesource.com/chromium/src.git/+log/546a0c348066..b6ed11afc0b6 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/dabc575458..e1f141abd1 * buildtools/linux64: git_revision:7a8aa3a08a13521336853a28c46537ec04338a2d..git_revision:18602f6cf1168cf78302024043edc02e8bad2ffb * buildtools/mac: git_revision:7a8aa3a08a13521336853a28c46537ec04338a2d..git_revision:18602f6cf1168cf78302024043edc02e8bad2ffb * buildtools/win: git_revision:7a8aa3a08a13521336853a28c46537ec04338a2d..git_revision:18602f6cf1168cf78302024043edc02e8bad2ffb * testing: https://chromium.googlesource.com/chromium/src/testing/+log/2fb6c69cf6..839a62417a * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/8c8fca086a..b40b412c52 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/932a488783..53875ab998 * third_party/libunwind/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind.git/+log/62e217a12e..e2e6f2a67e * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/aff620db66..b86167407e * third_party/protobuf: https://chromium.googlesource.com/chromium/src/third_party/protobuf/+log/cd23b39adb..f562a33548 * third_party/r8/cipd: gGadR6V7o2SmjHbzW1l6XTqevp9W46BjXFPojfAxGucC..BGYNB46xHask4pPhdBew2BvSMbUQQoEBFTm2BwOW0s0C * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/b602e7fadb..b179fe3a63 * third_party/turbine/cipd: iJs7aB4rFWVA7mWGYiFq93N3ME_xpSuyIULTpTxD5Z0C..VDRfuS7ecfYWh2qfdysLpI-mb2ankqRuZ6fl6RSDgZYC * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/53590f2c89..67e8e4e042 No update to Clang. Bug: None Tbr: geofflang@google.com Change-Id: I1d8ef89f2e0fdba2e25610d5322edf1435447d25 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6342519 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Kimmo Kinnunen 9a753dba 2025-01-16T13:00:07 Metal: remove unused, buggy primitive restart code Remove functions related to primitive restart that are not used and are buggy. Bug: angleproject:401284933 Change-Id: I4b64fda45f2d1654fafd180aeaaf17fe365d5016 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333537 Auto-Submit: Kimmo Kinnunen <kkinnunen@apple.com> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Alexey Knyazev <lexa.knyazev@gmail.com>
Matthew Denton f38a081c 2025-03-06T12:34:20 WGPU: when copying to mip levels, copy correct size Bug: angleproject:389145696 Change-Id: I78a2a573de371c1439033ef4e43f84906b076d41 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333237 Reviewed-by: Liza Burakova <liza@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
Alexey Knyazev 1bfeb8a5 2025-03-03T00:00:00 D3D11: Set SV_Position interpolation for conservative depth HLSL requires centroid interpolation for PS input position if conservative depth output is used and the shader is executing at pixel-frequency. Bug: angleproject:397720825 Change-Id: I2b314e39e40a63cb58e2bdef99ffa842ddaaff0d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6336827 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Alexey Knyazev <lexa.knyazev@gmail.com>
Xinyu Fang f1a29079 2025-02-27T16:47:17 Add validation of invalid parameters for certain APIs The list of modified validation APIs: - ValidatePixelPack - ValidateDebugMessageControlKHR Bug: angleproject:399412222 Change-Id: I07a5603431db6b0f89139fdd21d2d0a050b30027 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6307365 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Auto-Submit: Xinyu Fang <xinyu.fang@arm.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Junji Watanabe ace2d6ce 2025-03-10T18:05:00 infra: Add $build/siso properties to builders This is a preparation for Siso migration, and shouldn't change the behaviors of the bots, yet. Bug: b/401959048 Change-Id: I7c81e4bee5389214bb537ccb7efe08721f4ff7ff Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6339328 Auto-Submit: Junji Watanabe <jwata@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Roman Lavrov <romanl@google.com>
angle-autoroll 2d03d7a1 2025-03-10T10:24:11 Roll vulkan-deps from adee401e9cba to b65ddf3969c1 (6 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/adee401e9cba..b65ddf3969c1 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/92356079fb9c9f6aa5c9c7766d5f8c5d52f436c3..92f369acac50411450886633fe2749100964391a https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/ba828b232c88c572624476c03c284a09c1b34f55..9e470ef0f95d6923fa19dc5c5dc48c1442eb5a8b https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools/+log/2bcf294ed82185b17c6c73ff512033a59dedb12d..072c8124dc6721df9b9c47f48830319b3218227a https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/789e54cec2e2c8e134522cc90f4b327852cdf0de..449fc4aa46a7aa1ef635a18c8198e2dbcacafb64 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: geofflang@google.com Change-Id: Ifae00db6789c40043d7c023e86b625c363bb6a15 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6338474 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 77dc28f4 2025-03-10T09:33:29 Roll Chromium from c86846c05457 to 546a0c348066 (804 revisions) https://chromium.googlesource.com/chromium/src.git/+log/c86846c05457..546a0c348066 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,geofflang@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/d888fb97bd..dabc575458 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/135baa8210..50e9c3d18e * testing: https://chromium.googlesource.com/chromium/src/testing/+log/e64069c364..2fb6c69cf6 * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/b0604d7ea2..8c8fca086a * third_party/android_build_tools/error_prone/cipd: yV2AWEuHgVYgavFYLJw7j7TY-u0ti8S84sQtfQ_2Wo0C..PUFyo5eTRLBVraTti00zSIPJ9JJazDE9OU5e-mc6sicC * third_party/android_build_tools/lint/cipd: odZaAzq5aTldQyS4zrVQBok4BHtqZUpxdhVHlZCO0ukC..tsOuC8RTor7xvEQGKjf4UUWbOZ6CXLUAWTapMfyjtSIC * third_party/android_build_tools/manifest_merger/cipd: DIy35BIO4jvsL0DDQvMnUdDC1rep8uWzgKeSHejYdKAC..XsYjBCg98jVV1y2tdwYTvXS_V_53hDdGBdsLsI_Cd-AC * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/f1f2b47c96..932a488783 * third_party/fuchsia-sdk/sdk: version:27.20250301.0.1..version:27.20250308.2.1 * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/688c775e96..aff620db66 * third_party/r8/cipd: S_Mw-FWmkjlDmMD5YGNWSahfOYEaf0V-QE2qNlpQp_kC..gGadR6V7o2SmjHbzW1l6XTqevp9W46BjXFPojfAxGucC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/e816ca14d2..b602e7fadb * third_party/siso/cipd: git_revision:ef01a689b77e0a3c98e841310bf3cdea737707ab..git_revision:6b0b080aea4fa142b573795daa977e8751947452 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/6b2fe798bf..53590f2c89 No update to Clang. Bug: None Tbr: geofflang@google.com Change-Id: Ib8de118c9147470902efcea7f7dca19160512dfb Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6338472 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Chris Dalton 6c2737be 2025-03-06T13:09:44 Allow RASTERIZER_DISCARD while PLS is active Writes to pixel local storage can just be discarded as normal. The only special interaction we need is that BeginPixelLocalStorageANGLE always clears the PLS attachments, even if RASTERIZER_DISCARD is enabled. Bug: angleproject:40096838 Change-Id: I43d00af96b287134d73f08802cea58694fe7d717 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6332026 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Kenneth Russell <kbr@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Yuxiang Qian e41cbdb5 2025-02-26T17:51:06 Complete the implementation of GL_EXT_buffer_storage Currently, glBufferStorageEXT doesn't set buffer usage to DYNAMIC_DRAW. Also, validation of glGetBufferParameter* misses check for GL_BUFFER_IMMUTABLE_STORAGE_EXT and GL_BUFFER_STORAGE_FLAGS_EXT. This patch fixes these issues. Also, an end2end test is added. Bug: angleproject:399689628 Change-Id: Iecf6bd921f4fff849a5f059adf40043d08edfb7a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312515 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com>
Shahbaz Youssefi a63c2826 2025-03-08T16:12:40 Skip MultithreadingTest.ProgramLinkAndBind on Intel/windows Due to flakiness Bug: angleproject:401554049 Change-Id: I7210ff90c6de3d9b225d1e3a65df3cc4452fc9d6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6334634 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Mohan Maiya 0331847e 2025-03-07T16:32:41 Vulkan: Update VkGraphicsPipelineCreateInfo::flags ... with protected access bits if VK_EXT_pipeline_protected_access is supported Bug: angleproject:42265839 Bug: angleproject:391002353 Change-Id: Ibb00a4a0dcb1084046403bf4bfaeeb8d125b9aea Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6336515 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll 113bd9ef 2025-03-08T11:26:16 Manual roll vulkan-deps from e369814ee08e to adee401e9cba (14 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/e369814ee08e..adee401e9cba Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/19d232bb93a8585236051094cf49f747cc892e26..92356079fb9c9f6aa5c9c7766d5f8c5d52f436c3 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/0f0cfd88d7e6ece3ca6456df692f0055bde94be7..cacef3039d277c448c89336290ec3937270b0996 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/1bc9d032a89ef9b09e5b395d2f93fcd59fedf8ad..8491f31d36a8c642e588220b89729129721fec31 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools/+log/7efad3a101ea6e641e5948a4ed0d6e93b99b7bff..2bcf294ed82185b17c6c73ff512033a59dedb12d https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/50563f48368d75281bc2fb1c3407dc531ce28910..bc3a4d9fd9b46729651a3cec4f5226f6272b8684 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/85582585bee9e1ff7660dafeba76afcb524dbed3..789e54cec2e2c8e134522cc90f4b327852cdf0de If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: I76a1b65476db8197efddf004d55e72b7d655e058 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6337447 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 1cd6194d 2025-03-07T18:37:45 Manual roll vulkan-deps from d34de7171c18 to e369814ee08e (8 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/d34de7171c18..e369814ee08e Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/0e5ff759622e16fa55e515895ca049a9056d68be..3b495e1450b19dd79c4493ec2fe9698d003e209f https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/d3fc6ed183bd375538d3ca6d45d160470b3b6cdc..ba828b232c88c572624476c03c284a09c1b34f55 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools/+log/dd0c2e4afdf11fcec55902c92865e57768af928a..7efad3a101ea6e641e5948a4ed0d6e93b99b7bff https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/ad204746d6f25d00c38cb870e9c67b919eb96a9b..85582585bee9e1ff7660dafeba76afcb524dbed3 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: I426e9a538b65ae83333e05526ace11163063e9b3 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6336504 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Stephen White 412bd05c 2025-03-06T19:26:11 Implement workaround for MAX_COMBINED_SHADER_OUTPUT_RESOURCES. Implement a GL Feature to force MAX_COMBINED_SHADER_OUTPUT_RESOURCES to be the sum of MAX_COMBINED_SHADER_STORAGE_BLOCKS, MAX_COMBINED_IMAGE_UNIFORMS, and MAX_COLOR_ATTACHMENTS. Enable the feature for NV and PowerVR Rogue. Bug: angleproject:401232345 Change-Id: I03a113eed364617303f4ee59d90c853258865259 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6330671 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Stephen White <senorblanco@chromium.org>
angle-autoroll 83f3bdfd 2025-03-07T14:42:29 Manual roll vulkan-deps from 4f7de8f463f8 to d34de7171c18 (1 revision) Manual roll requested by ynovikov@google.com Due to https://github.com/KhronosGroup/Vulkan-Headers/pull/534 including <vulkan/vulkan.h> now causes <X11/Xlib.h> to be included, which breaks the build because of the macros it defines. To workaround, undefine these macros after vulkan.h include. https://chromium.googlesource.com/vulkan-deps.git/+log/4f7de8f463f8..d34de7171c18 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers/+log/952f776f6573aafbb62ea717d871cd1d6816c387..0f0cfd88d7e6ece3ca6456df692f0055bde94be7 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: chromium:345261080 Change-Id: Ib229dc03e7b33daf817e3248025fdcab64157e1e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6334528 Reviewed-by: Solti Ho <solti@google.com> Commit-Queue: Solti Ho <solti@google.com>
Yuly Novikov 4eb4165b 2025-03-07T10:24:05 Roll third_party/dawn/ 8119dbd27..7a8946456 (244 commits; 3 trivial rolls) Need https://dawn-review.googlesource.com/c/dawn/+/229494 to roll https://chromium-review.googlesource.com/c/angle/angle/+/6334483 vulkan_platform.h:152:9: error: 'VK_USE_PLATFORM_XLIB_KHR' macro redefined https://dawn.googlesource.com/dawn.git/+log/8119dbd27471..7a8946456d49 $ git log 8119dbd27..7a8946456 --date=short --no-merges --format='%ad %ae %s' 2025-03-07 cwallez [tint] Add support for binding_array to the IR validator 2025-03-07 hitawala [stream] Check for size invalidity before reserving in Stream::Read 2025-03-07 cwallez Reland "[dawn] Fix detection of __builtin_assume for DAWN_ASSERT" 2025-03-06 dawn-autoroll Roll ANGLE from 99ebd28ad246 to 0cdbc7814e59 (4 revisions) 2025-03-06 jiawei.shao Remove the redefinition of dawn::native::Vulkan::ClampFragDepthArgs 2025-03-06 jiawei.shao Vulkan: Implement PreferNotUsingMappableOrUniformBufferAsStorage() 2025-03-06 rharrison [tint][ir][fuzz] Re-enable SubgroupMatrix in IR binary 2025-03-06 shrekshao [Compat] Remove suppressions for ReadOnlyDepthStencilAttachmentTests 2025-03-06 thomasanderson [X11] Don't redefine VK_USE_PLATFORM_XLIB_KHR 2025-03-06 lokokung [dawn][emscripten] Fix Emscripten bindings for compilation messages. 2025-03-06 lokokung [dawn][native] Add validation for Infinities. 2025-03-06 lokokung [dawn][headers] Update wgpu::Surface APIs to match upstream. 2025-03-06 bsheedy [tools] Convert glob to use dependency injection 2025-03-06 cwallez [dawn][native] Track the set of BGLInternal separately from BGL. 2025-03-06 amaiorano tint: make PreventInfiniteLoops count down from uint32::highest() down to 0 2025-03-06 dsinclair Revert "Vulkan: Allow setting multiple `MemoryKind` bits" 2025-03-06 ynovikov Reland "Roll reclient, siso; update related DEPS to match Chromium" 2025-03-06 dawn-autoroll Roll ANGLE from 1a0c9db3748a to 99ebd28ad246 (8 revisions) 2025-03-06 cwallez Revert "[dawn] Fix detection of __builtin_assume for DAWN_ASSERT" 2025-03-05 zhaoming.jiang Dawn: Remove adapter from shader compilation request 2025-03-05 jiawei.shao Skip the test CreateBufferOOMWithValidationError when no validation 2025-03-05 lokokung [dawn][native] Make error scopes thread local. 2025-03-05 dawn-autoroll Roll ANGLE from 6b10ae3386b7 to 1a0c9db3748a (3 revisions) 2025-03-05 mohamedkhairy0101 tint: Improve error message for module-scope function calls 2025-03-05 mohammedashraf4599 add BOM error message 2025-03-05 cwallez [dawn] Fix detection of __builtin_assume for DAWN_ASSERT 2025-03-05 cwallez [tint] Add binding_array indexing to the resolver. 2025-03-05 kylechar Add SlabAllocator::DeleteEmptySlabs() 2025-03-05 dawn-autoroll Roll ANGLE from 73992d71f9d1 to 6b10ae3386b7 (7 revisions) 2025-03-05 shrekshao Remove enabling core-features-and-limits in backends 2025-03-04 lokokung [dawn][headers] Removes default UTF16 support. 2025-03-04 lokokung Reland "[dawn][headers] Remove obsolete ifdefs." 2025-03-04 jwata build: GN builds use Siso without Reclient in tools/setup-build script 2025-03-04 jrprice [vulkan] Fix subgroup matrix config gathering 2025-03-04 dawn-autoroll Roll ANGLE from bd8bc1055ecd to 73992d71f9d1 (1 revision) 2025-03-04 chrome-branch-day Activate dawn M135 2025-03-04 beaufort.francois Remove maxInterStageShaderComponents limit 2025-03-04 beaufort.francois Refactor Bindgroup constructors 2025-03-04 cwallez [tint] Add binding_array to the resolver 2025-03-04 cwallez Revert "[dawn][headers] Remove obsolete ifdefs." 2025-03-04 lokokung [dawn][headers] Remove obsolete ifdefs. 2025-03-03 zhaoming.jiang Dawn: Cache limits in AdapterBase 2025-03-03 dawn-autoroll Roll ANGLE from 19b35fcbff31 to bd8bc1055ecd (5 revisions) 2025-03-03 lokokung [dawn][headers] Adds extension support for UTF-16 in compilation message. 2025-03-03 jrprice [spirv] Only add explicit layout decorations on types that need them 2025-03-03 kainino [emscripten] Add emsdk to DEPS for Wasm builds 2025-03-03 lokokung [dawn][wire] Adds Dawn wire invalid extension struct and handling. 2025-03-03 jrprice [dawn] Validate workgroup size for subgroup matrix 2025-03-03 jrprice [inspector] Reflect the use of a subgroup matrix 2025-03-03 jrprice [tint] Reject non-compute shaders that use subgroup matrices (...) 2025-02-18 zhjiang Dawn: Tighten the scope of ScopedTintICEHandler 2025-02-18 dawn-autoroll Roll DirectX Shader Compiler from 6b68f3b5832c to fcbd2a184294 (2 revisions) 2025-02-18 jiawei.shao Replace `PipelineCompatibilityToken(0)` with `kExplicitPCT` 2025-02-18 yulong.fs fix memory address value passed to emwgpuDelete() 2025-02-18 dsinclair [spirv-reader][ir] Implement OpConvertFToU 2025-02-18 kainino dawn::DynamicLib: Leak all DLLs on Windows ASan builds 2025-02-18 dsinclair [spirv-reader][ir] Implement ConvertFToS 2025-02-18 petermcneeley Fix for assignment outside the range of representable type 2025-02-18 kainino Refactor TINT_ASAN_ENABLED into common DAWN_ASAN_ENABLED() 2025-02-18 gman Add a trace option to the Metal Backend 2025-02-18 dawn-autoroll Roll ANGLE from ba3dcfa4670d to 8dda514cb833 (3 revisions) 2025-02-18 dsinclair Mark function unused. 2025-02-18 dawn-autoroll Roll DirectX Shader Compiler from 20950d662f4d to 6b68f3b5832c (1 revision) 2025-02-17 dawn-autoroll Roll ANGLE from e0332c861004 to ba3dcfa4670d (1 revision) 2025-02-17 dawn-autoroll Roll vulkan-deps from 2a09ac22553e to 5d08bc0b0e23 (6 revisions) 2025-02-17 yulong.fs fix buffer destroy 2025-02-17 dawn-autoroll Roll ANGLE from 51d2561b5a6b to e0332c861004 (1 revision) 2025-02-17 lehoangquyen D3D: remove dead code used by the old external image API 2025-02-16 dawn-autoroll Roll Depot Tools from 77a800d7294d to 7a0dbd207449 (59 revisions) 2025-02-16 jiawei.shao Enable creating pipeline layout with null bind group layout by default 2025-02-16 dawn-autoroll Roll vulkan-deps from 2365826a66b2 to 2a09ac22553e (1 revision) 2025-02-15 dawn-autoroll Roll vulkan-deps from cc6490ed63e7 to 2365826a66b2 (5 revisions) 2025-02-15 dawn-autoroll Roll ANGLE from bef478f54e6e to 51d2561b5a6b (2 revisions) 2025-02-15 jie.a.chen Fix CooperativeMatrix extension index 2025-02-14 dawn-autoroll Roll ANGLE from 7afa2345f8d2 to bef478f54e6e (3 revisions) 2025-02-14 dsinclair [spirv-reader][ir] Register names instead of using new 2025-02-14 dsinclair [spirv-reader][ir] Support OpBranchConditional after OpSelectionMerge 2025-02-14 dawn-autoroll Roll vulkan-deps from 5cc3a63e8fdb to cc6490ed63e7 (5 revisions) 2025-02-14 gman Emit WGSL errors as part of GPUValidationError 2025-02-14 jimblackler [Kotlin] Update template now WGPUChainedStructOut has been removed. 2025-02-14 dawn-autoroll Roll ANGLE from cd7f92e1ed57 to 7afa2345f8d2 (6 revisions) 2025-02-13 petermcneeley Substitute overrides in IR (vk) 2025-02-13 shaoboyan [Spirv] Remove clamp_frag_depth attribute in Options 2025-02-13 dsinclair [spirv-reader][ir] Handle OpBranch instruction 2025-02-13 jrprice [ir] Add builtin struct support to the protobuf 2025-02-13 rharrison [tint][ir][val] Check Samplers & Textures address space 2025-02-13 jrprice [tint] Add flag for WGSL internal structures 2025-02-13 rharrison [tint] Replace unsafe casting with shift & mask in eval.cc 2025-02-13 rharrison [tint] Narrow warning suppression in table_data.h 2025-02-13 bajones Loosen Viewport validation requirements 2025-02-13 shrekshao [Compat] Add compat-min-es31 tags in expectations 2025-02-13 gman Remove old subgroups from dawn.node 2025-02-13 dawn-autoroll Roll ANGLE from 19c5293e1347 to cd7f92e1ed57 (9 revisions) 2025-02-13 dsinclair [spirv-reader][ir] Add names for functions and function parameters. 2025-02-13 dsinclair [spirv-reader][ir] Support names. 2025-02-13 dsinclair [spirv-reader][ir] Fixup mixed sign binary methods. 2025-02-13 dawn-autoroll Roll vulkan-deps from a88fd25a6a0d to 5cc3a63e8fdb (17 revisions) 2025-02-13 dsinclair Add suppressions for compat failures. 2025-02-13 jrprice [spirv] Emit Matrix*SignedComponents operands 2025-02-13 jrprice [tint] Subgroup matrix component types do not have to match Created with: roll-dep third_party/dawn Bug: chromium:345261080 Change-Id: I9ee360934bcbd838d682ffabe5029cc7baecec9b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333617 Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Yuxin Hu efb344e9 2025-03-06T15:09:21 Remove unused VVL skip message Below tests from the two bugs: angleproject:42264930 Texture2DBaseMaxTestES3.Fuzz545ImmutableTexRenderFeedback/ES3_Vulkan angleproject:42265542 FramebufferTest_ES3.ReattachToInvalidBaseLevel/ES3_Vulkan No longer fails due to VVL error. Tested on Linux with AMD Vulkan driver. Remove the original VVL error from the skip list. Bug: angleproject:42264930 Bug: angleproject:42265542 Change-Id: I249033e643211bae399712303162ab990c154fa6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6334552 Auto-Submit: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
angle-autoroll a69c2803 2025-03-07T13:46:27 Manual roll vulkan-deps from cc919ee5dbcf to 4f7de8f463f8 (3 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/cc919ee5dbcf..4f7de8f463f8 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/8dffe4c195918813d3aa4c557c2853e55e9ca037..0e5ff759622e16fa55e515895ca049a9056d68be https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/3ea34d98a3b088d60d66404b0a9bdb893452ab8f..ad204746d6f25d00c38cb870e9c67b919eb96a9b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: I6abda7203b65ffedc2e193c49dc0b3278750f2c8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6334527 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Victor Hugo Vianna Silva 234c3f73 2025-03-07T11:41:10 Roll third_party/perfetto/ d06bef780..5c17fc6e0 (3310 commits) Also make the gitlink owned by anyone, like the others. https://android.googlesource.com/platform/external/perfetto.git/+log/d06bef7807a8..5c17fc6e089c $ git log d06bef780..5c17fc6e0 --date=short --no-merges --format='%ad %ae %s' 2025-03-06 lalitm tp: fix crash when we unable to parse kernel version 2025-03-06 stevegolton ui: Fix screenshot tests 2025-03-06 zezeozue ui: Show more descriptive names in the binder plugin 2025-03-06 elrakadm Create new sql function __instrinsic_strip_hex in perfetto sql 2025-03-06 rsavitski misc python scripts: use raw strings to avoid syntax warnings 2025-03-06 stevegolton ui: Bump idle detector timeout from 30s to 60s 2025-03-06 rsavitski ui: LinuxPerf: remove debug print and the now-unused type value 2025-03-06 stevegolton ui: Relax constraints when checking for optional dataset types 2025-03-06 stevegolton ui: Use struct for args to createTraceProcessorSliceTrack() 2025-03-06 stevegolton ui: Bump test timeout for large trace 2025-03-06 stevegolton ui: Format queries in search_manager.ts 2025-03-06 stevegolton ui: Use SliceRef in debug/query tracks' details panels 2025-03-05 lukechang [ui] Add hotkey for pin track cmd 2025-03-05 elrakadm Change thread_prefix perfetto function to public 2025-03-05 stevegolton ui: Add search implementation based on dataset 2025-03-05 stevegolton ui: Batch large union datasets into CTEs to avoid SQLite limits 2025-03-05 rsavitski smaps_rollup: clarify that it doesn't work on android sysimg out of the box 2025-03-05 zezeozue ui: Add a reason_type breakdown to the binder plugin 2025-03-05 lalitm ui: fix categorization of smaps tracks 2025-03-04 rzuklie Import Bluetooth duration as dur rather than arg. 2025-03-04 lydiatse ui: Breakdown tracks component 2025-03-04 shinyuw Add disp_vblank_irq_enable ftrace event 2025-03-03 lalitm perfetto: pin summary full proto to java 11 2025-03-03 lalitm perfetto:: Update changelog with `TraceWriter::drop_count` 2025-03-03 lalitm perfetto: add `TraceWriter::drop_count` 2025-03-03 elrakadm More standarization of slices (wakelocks, async slices) 2025-03-03 lalitm ui: add test for CPU and thread funcgraph traces 2025-03-03 simonmacm Clamp kernel wakelock held ratio to 0 as well as 1; we have seen pathological values occasionally cause massive negative values here. 2025-02-28 lalitm perfetto: expose trace summary protos publicly in Bazel 2025-02-28 elrakadm standarize vsync slice names and asset loading 2025-02-27 stevegolton ui: Scroll track group into view on collapse 2025-02-27 lalitm tp: add support for adding key-value metadata fields to summary 2025-02-27 lalitm ui: fix thread funcgraph data being missing 2025-02-27 ktimofeev Revert "Android Java SDK: test that we can use `@CriticalNative`." 2025-02-26 ktimofeev Android Java SDK: test that we can use `@CriticalNative`. 2025-02-26 ktimofeev BUILD: use API level 35 when building Android SDK with Bazel. 2025-02-26 ktimofeev Android Instrumentation Testing using Blaze: fix test runner script. 2025-02-26 altimin [ui] Remove old pivot table implementation 2025-02-26 lalitm Revert "perfetto: always use suspend aware clock for service snapshots" 2025-02-26 lydiatse ui: Data visualiser row limit warning. 2025-02-26 lydiatse ui: Add Query Node actions. 2025-02-26 lalitm tp: make perfetto keyword also a possible id 2025-02-26 primiano ui: recording: make chrome extension message more actionable 2025-02-26 lalitm tp: fix unused state variable in grammar destructor 2025-02-26 stevegolton ui: Roll stable 2025-02-26 stevegolton ui: Roll canary 2025-02-26 stevegolton ui: Remove the ability to set TrackNode ids manually 2025-02-26 chinglinyu ui: handle swapper task in multi-machine traces 2025-02-25 shayba Reland "Add bitmap tracing events to android_track_event" 2025-02-25 mayzner tp: Make v2_metric proto public. (...) 2024-01-31 hjd ui: Show unterminated thread state slices 2024-01-31 stevegolton [ui] Add links to flows tab in area selection details panel 2024-01-31 hjd ui: experimental.slices -> slices.slices 2024-01-31 stevegolton [ui] Add UI plugin docs for tabs and details panels 2024-01-31 stevegolton [ui] Show empty state widget in flow tab when no flows can be displayed 2024-01-31 stevegolton [ui] Fix bug where tabs could not be closed when we have too many open 2024-01-31 hjd ui: Add feature docs for TabsV2 2024-01-31 zezeozue [ui]: Add debug tracks for app_process_starts 2024-01-31 simonmacm Fix feature detection for battery plugin. 2024-01-31 mayzner Revert "tp: Extrinsically sorted columns" 2024-01-30 zezeozue [stdlib]: Add an android_app_process_starts module 2024-01-30 lalitm tp: remove experimental package and diffuse contents into other packages 2024-01-30 lalitm tp: merge NullableVector into ColumnStorage<optional<T>> 2024-01-30 mayzner tp: Extrinsically sorted columns 2024-01-30 primiano TP: parse trace filter stats 2024-01-30 lalitm tp: improve API of RuntimeTable 2024-01-30 stevegolton [ui] Improve aggregation tab discovery 2024-01-30 primiano test: add NullConsumerEndpoint 2024-01-30 hjd ui: TabsV2 panel starts closed 2024-01-30 sgjesse Update test to ensure OOM triggering allocation is not optimized out 2024-01-30 yangwangyw Add ODP perfetto metric. 2024-01-30 lalitm tp: document CREATE PERFETTO MACRO 2024-01-30 lalitm tp: add documentation of macros in standard library 2024-01-30 lalitm tp: implement graph reachability macro in standard library 2024-01-30 lalitm tp: reduce public API surface of Table 2023-12-20 pablogamito Add protolog trace processor 2024-01-30 mayzner tp: Fix BitVector::Builder check 2024-01-30 primiano Optimize binary size of syscall tables 2024-01-29 lalitm tp: rework all internal tables to be prefixed with just _ 2024-01-29 ddiproietto Revert "perfetto_cmd: Move code into libperfetto.so" 2024-01-29 ddiproietto Revert "trigger_perfetto: Move code into libperfetto.so" 2024-01-29 fhernqvist Add the base category to the Audio perfetto switch 2024-01-29 stevegolton [ui] Put pivot table tab behind flag 2024-01-29 rsavitski ui: simplify "io.ufs.command.tags" track grouping 2024-01-22 spandandas Add libz to shared libs of heapprofd_standalone_client 2024-01-17 stevegolton [ui] Include async stack trace in error report for failed queries 2023-12-15 liutongbo Add mcts tag to MainlineCTS ART test modules. 2023-05-09 ddiproietto ftrace: Avoid crashing if format doesn't match expectations 2023-09-12 rzuklie Proto fields for network tracing icmp type/code. 2023-07-19 hugojacob Fix duplicated `data` field 2023-03-10 ddiproietto Build apps for CTS tests with sdk 31 2023-03-10 ddiproietto Move reporter_test_cts.cc into a separate file 2023-03-08 rpl Explain the use of `min_sdk_version: "31"` in `CtsPerfettoTestCases`. 2023-03-10 ddiproietto Move reporter app into subdirectory 2023-03-06 rpl Run `HeapprofdJavaCtsTest` in Mainline Presubmits with the ART Module. 2023-03-02 rpl Add support for `CtsPerfettoTestCases` to MTS. 2023-03-06 rpl Run `HeapprofdJavaCtsTest` in Mainline Presubmits with the ART Module. 2023-03-02 rpl Add support for `CtsPerfettoTestCases` to MTS. 2023-02-22 rsavitski Revert "cts: stop asking for special FGS permission for isolated service" 2023-02-21 rsavitski cts: stop asking for special FGS permission for isolated service Created with: roll-dep third_party/perfetto Bug: chromium:388068052 Change-Id: I586c7e76d905279a324d3189d9e9cd9a3502c183 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6329991 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Roman Lavrov <romanl@google.com> Auto-Submit: Victor Vianna <victorvianna@google.com> Commit-Queue: Roman Lavrov <romanl@google.com>
angle-autoroll d7538152 2025-03-07T07:01:24 Roll Chromium from 7cf51f2bf4b0 to c86846c05457 (554 revisions) https://chromium.googlesource.com/chromium/src.git/+log/7cf51f2bf4b0..c86846c05457 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/ffd2960846..d888fb97bd * buildtools/linux64: git_revision:dae6a4496ecbe141b76c67ce5f1996711a3f87cd..git_revision:7a8aa3a08a13521336853a28c46537ec04338a2d * buildtools/mac: git_revision:dae6a4496ecbe141b76c67ce5f1996711a3f87cd..git_revision:7a8aa3a08a13521336853a28c46537ec04338a2d * buildtools/win: git_revision:dae6a4496ecbe141b76c67ce5f1996711a3f87cd..git_revision:7a8aa3a08a13521336853a28c46537ec04338a2d * testing: https://chromium.googlesource.com/chromium/src/testing/+log/0f5ae1427a..e64069c364 * third_party/android_build_tools: https://chromium.googlesource.com/chromium/src/third_party/android_build_tools/+log/3a5a3b1187..cd3ef01e66 * third_party/android_build_tools/nullaway/cipd: 65WJkoinJEXvtu9xwdDNDb3QCbqBAl8FKDpgnXr3iiEC..Br9gBQM1eYGrSHKahSZ-WTQPlz-YegUJ9mvraq3UajUC * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/7347dc7bf0..f1f2b47c96 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/518773bc43..4d2793429f * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/e12bb2ed8b..688c775e96 * third_party/r8/cipd: XmGGyZBHve7V9GyuIoNw9bCzu7jot4K8f3QwfoJ7_MYC..S_Mw-FWmkjlDmMD5YGNWSahfOYEaf0V-QE2qNlpQp_kC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/d6c6ae0ddf..e816ca14d2 * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/3872603833..d7583da45f * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/6b8dd30537..0ea80f8705 * tools/mb: https://chromium.googlesource.com/chromium/src/tools/mb/+log/a04da863f0..61f390a8b5 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/496cd4818d..6b2fe798bf No update to Clang. Bug: None Tbr: solti@google.com Change-Id: I85dd8604554292a53bc91d88bf1a53cd324b71c6 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6334176 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Matthew Denton 0cdbc781 2025-03-06T11:22:18 WGSL: Output samplers, including samplers from structs This output two WGSL variables for each GLSL sampler, including samplers in structs. This does not output the correct types for the WGSL variables, yet, nor does it generate texture access function calls. It also can't deal with arrays of samplers, which are not allowed in WGSL. Note that WGSL does not allow structs containing samplers to be arguments to a function, like Vulkan, nor does it allowed arrays of samplers at all, unlike Vulkan. This deals with the former problem the same way as Vulkan and Metal, by monomorphizing functions that take unsupported arguments. Bug: angleproject:389145696 Change-Id: I346688783dd2771c8fe6848b6783d948ed111783 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6253672 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Matthew Denton <mpdenton@chromium.org>
angle-autoroll 3daf60f7 2025-03-06T19:38:39 Manual roll vulkan-deps from c7d9e02082b2 to cc919ee5dbcf (26 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/c7d9e02082b2..cc919ee5dbcf Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/131c5ff10f600580902229e8c2689da709e003be..19d232bb93a8585236051094cf49f747cc892e26 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/a946dba8574df96cd0f1004f91406bbf226c4a6f..d3fc6ed183bd375538d3ca6d45d160470b3b6cdc https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/224f1c36695967f0ec719c360f39da220dffda20..1bc9d032a89ef9b09e5b395d2f93fcd59fedf8ad https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools/+log/4b1c758046b142168a6a58dfb25d380820d8e19a..dd0c2e4afdf11fcec55902c92865e57768af928a https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/5f41f2a9bf3589dc5d1791d42ff46f1abe873f2b..50563f48368d75281bc2fb1c3407dc531ce28910 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/c288b606725be00b77926cbea9737d379e1cffe2..3ea34d98a3b088d60d66404b0a9bdb893452ab8f If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: Iff25c11a43adfe13bf84229b5eb2ad4bdb9fca19 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333236 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Shufen Ma 85fe2671 2025-02-25T16:54:20 Set length or infoLog when they are not NULL For glGetProgramPipelineInfoLog, spec says that if length is NULL, then no length is returned. Also do this to infoLog to avoid crash. Bug: angleproject:398904340 Change-Id: I1f87a8932f72a0d5c44c2344936ee18c674a802b Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6300356 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Roman Lavrov <romanl@google.com> Commit-Queue: Cody Northrop <cnorthrop@google.com>
angle-autoroll ab98c698 2025-03-06T11:34:09 Manual roll vulkan-deps from 4b720a347d47 to c7d9e02082b2 (18 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/4b720a347d47..c7d9e02082b2 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/99ee11b0106b48f06fb9e2a324ba928b8316cc33..8dffe4c195918813d3aa4c557c2853e55e9ca037 https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/3346bb2280a3a132403641d70f6cbedc6f85365a..131c5ff10f600580902229e8c2689da709e003be https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/b1140ad29a5e73ec3b938632fbc5ceeed2027103..a946dba8574df96cd0f1004f91406bbf226c4a6f https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader/+log/809941a4ca137df69dc9c6e8eb456bd70309197c..224f1c36695967f0ec719c360f39da220dffda20 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools/+log/fb8f5a5d69f4590ff1f5ecacb5e3957b6d11daee..4b1c758046b142168a6a58dfb25d380820d8e19a https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/5f8c82f68a9e1a63f3b9effceb928d7068873813..c288b606725be00b77926cbea9737d379e1cffe2 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: I53c01a61491ea8f5cbdd4c50050a5277b8a828f1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6333031 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 99ebd28a 2025-03-06T09:02:48 Roll Chromium from 368392cfc394 to 7cf51f2bf4b0 (622 revisions) https://chromium.googlesource.com/chromium/src.git/+log/368392cfc394..7cf51f2bf4b0 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/9afcd7944d..ffd2960846 * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/0224bdb2e3..135baa8210 * buildtools/linux64: git_revision:eabc4de478e68adce5a645261aadbb00f2994f14..git_revision:dae6a4496ecbe141b76c67ce5f1996711a3f87cd * buildtools/mac: git_revision:eabc4de478e68adce5a645261aadbb00f2994f14..git_revision:dae6a4496ecbe141b76c67ce5f1996711a3f87cd * buildtools/win: git_revision:eabc4de478e68adce5a645261aadbb00f2994f14..git_revision:dae6a4496ecbe141b76c67ce5f1996711a3f87cd * testing: https://chromium.googlesource.com/chromium/src/testing/+log/d8f523232f..0f5ae1427a * third_party/abseil-cpp: https://chromium.googlesource.com/chromium/src/third_party/abseil-cpp/+log/2705c6655c..b0604d7ea2 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/6d817fd7f4..f40ddcd8d5 * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/ac66645101..7c3087b8a7 * third_party/libjpeg_turbo: https://chromium.googlesource.com/chromium/deps/libjpeg_turbo.git/+log/927aabfcd2..e14cbfaa85 * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/a35441f9bb..e12bb2ed8b * third_party/r8/cipd: w5KUJIdByRgBQ6coQA_wTY1rmuuZ8IMvkfVpctohUIkC..XmGGyZBHve7V9GyuIoNw9bCzu7jot4K8f3QwfoJ7_MYC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/46287405a3..d6c6ae0ddf * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/e5dbe2f5d9..3872603833 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/3c16f5c569..6b8dd30537 * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/5dae5159e2..496cd4818d * tools/skia_goldctl/linux: uLQB_1WxcmRdlgGWxlAm-iVcWjyluWWVqk9bd5iOK6wC..iooiiMwZUCMqHCv40mG4S7a86FM-mCHhc43iUkLWqEcC * tools/skia_goldctl/mac_amd64: dd92wAzkVOkqYNdHKbG1PgtODtzTfTAM-IdVDacENC8C..J6jd6q-lIqYw3lwXZqUgINwrOoHMVWs-Qt_LZA3wsN4C * tools/skia_goldctl/mac_arm64: ZhEAr6v2tWN1oxK6leQvyRjaNwUi4vrXZAyCwv5veegC..hD1Vv8Z7IQMShv-PK0PEaSkXuaQi3EgzFIY49YR9ApkC * tools/skia_goldctl/win: LZpmI-6e2-R1o2X3Zgl_O54JicwHEzFp8T_XTBBs8zoC..xa9dza8Y74PPBKEHXdNtCQoVjtZgz1BmvtOM2CygAR8C No update to Clang. Bug: None Tbr: solti@google.com Change-Id: I1f93469d5738124e95b23aea6ce969f69360cf2d Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6332482 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Solti b5ad5035 2025-03-05T18:01:42 Manual roll vulkan-deps from 898a2304cea9 to 4b720a347d47 (1 revision) Manual roll requested by solti@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/898a2304cea9..4b720a347d47 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/8496ed5028cee8c5e5f18cc791766f6b454609fb..5f8c82f68a9e1a63f3b9effceb928d7068873813 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: b/399867824 Bug: b/400986108 Tbr: solti@google.com Change-Id: I205de362c25692700f8bf092003b2882028b6740 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6325931 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Solti Ho <solti@google.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
Yuly Novikov 4f6a799a 2025-03-05T18:28:44 Fix iOS build Broken by https://chromium-review.googlesource.com/c/angle/angle/+/6302912 Bug: b/398048048 Change-Id: I41d7c8b45b42b9fc36fcd761a254f346c7fb2299 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6330716 Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Cody Northrop <cnorthrop@google.com>
Shufen Ma 9bdc6763 2025-03-03T15:54:46 GetProgramPipelineiv may create a new state vector For glGetProgramPipelineiv, spec says that If pipeline is a name that has been generated (without subsequent deletion) by GenProgramPipelines, but refers to a program pipeline object that has not been previously bound, the GL first creates a new state vector in the same manner as when BindProgramPipeline creates a new program pipeline object. Also creates a new state vector in glValidateProgramPipeline if the pipeline has not been previously bound. Modify the ProgramPipeline's validate function so that when the program pipeline is generated, but has never been bound, the validation status would be false. Bug: angleproject:400254603 Change-Id: I906669a4e80aa12283156bae8a72a2dbf0b63b90 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6316349 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com>
Shahbaz Youssefi 3d806ba6 2025-03-02T00:15:36 Translator: Split textureGather* ops ... based on whether the comp or refz arguments are present. Bug: angleproject:349994211 Change-Id: I19e638f6cb27cdb890c5e30c0662aad30888d2da Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6313582 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Igor Nazarov e70d1298 2025-02-18T14:32:35 Vulkan: Rework SurfaceVk::mUse tracking logic Original commit that introduced `mUse` had a bug and was then reverted: Vulkan: SurfaceVk should only wait for GPU work that uses it https://crrev.com/c/angle/angle/+/4220723 The reland fixed the original issue by adding "contextVk::mLastSubmitQueueSerial" into "Surface::mUse" before calling finish: Reland "Vulkan: SurfaceVk should only wait for GPU work that uses it" https://crrev.com/c/angle/angle/+/4406891 However, the real issue was that the `finish()` call (called because of the "waitIdleBeforeSwapchainRecreation" feature) was done after `releaseSwapchainImages()`, which resets all resource uses. Because of this bug, `finish()` ignored all uses of swapchain images, causing GPU crash on Mali. Crash was not because of semaphores that was not tracked by resource use. Adding "mLastSubmitQueueSerial" fixed the crash simply because it accounts for all uses ever made by the Context. This change fixes this issue by calling `mergeImageResourceUses()` at the beginning of `releaseSwapchainImages()`. Adds missing retain when transitioning into the `ImageLayout::Present`. Updates one-off submit tracking by updating use of the image, rather than `SurfaceVk::mUse` directly. Explicitly tracks present semaphore submission. All these changes allow to remove adding `ContextVk::mSubmittedResourceUse` before calling `finish()` and in the `unMakeCurrent()`. I confirmed that this fix works by forcing `oldSwapchain` destruction (as if it was never used) and "waitIdleBeforeSwapchainRecreation" enabled. GPU crash happens on SM-S921B if remove addition of `mSubmittedResourceUse` before `finish()` call, and fixed again by calling `mergeImageResourceUses()` in the `releaseSwapchainImages()`. So the `mergeImageResourceUses()` fixes the issue without potentially waiting for unrelated submissions from the `mSubmittedResourceUse`. After this change, surface use tracking should work according to the original intent. Bug: angleproject:397848903 Bug: b/267806287 Change-Id: Ic8197e33d0c19aad274b5f9da6f9c7377a166b60 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6277446 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Igor Nazarov ad6c3d74 2025-02-19T22:45:29 Vulkan: Fix RP resolve layouts w.r.t shared present mode This is partially a regression after the previous change: Vulkan: Fix present optimization w.r.t shared present mode Before the above change, swapchain image was still optimized for present even when using shared present mode. However, because SetBitField(mAttachmentOps[packedAttachmentIndex].finalResolveLayout line was using `getCurrentImageLayout()` (lucky coincidence) it was setting correct SharedPresent layout into `finalResolveLayout`. The `initialLayout` and reference `layout` was still `VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL`, but for some reason VVL was not producing any errors. This change adds setting `finalResolveLayout` for the resolve attachment, which in turn propagates `VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR` to all renderpass layouts as well as to the dynamic rendering info. Test: angle_end2end_tests --gtest_filter=EGLSingleBufferTest.SharedPresentLayoutWithMSAA/* Bug: angleproject:42262606 Change-Id: I49a121f1d43a078890b0dc32e0574a79e3565270 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6281569 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Charlie Lao <cclao@google.com> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Igor Nazarov 318d4038 2025-02-18T13:19:28 Vulkan: Fix present optimization w.r.t shared present mode Since the implementation of "EGL_KHR_mutable_render_buffer" mode (angleproject:42262606), the renderpass optimization for present (b/153885625) was not working correctly. It sill tries to transition into `ImageLayout::Present`, but instead of entirely skipping the transition, it inserts the barrier even when renderpass is still opened. When both "supportsSharedPresentableImageExtension" and "preferDynamicRendering" are enabled, code will hit ASSERT in `flushToPrimary()` when attempting to record `ImageLayout::Present` barrier into the primary command buffer. Above issue is fixed by skipping the transitioning into `ImageLayout::Present` when in shared present mode. Other changes and fixes: - removed renderpass flush when resolving with renderpass, since it is not necessary (angleproject:42265256). - above change reveled a bug in `finalizeImageLayout(&mColorImageMS)` call. This call reverts the layout in the previous finalize call from Present to ColorWrite. So it must have been inserted before finalizing the swapchain image. Issue fixed by removing both finalize calls. - updated condition to skip invalidate w.r.t shared present mode (b/229689340), that was missed during implementation of "EGL_ANDROID_front_buffer_auto_refresh" (angleproject:42265697). Test: angle_end2end_tests --gtest_filter=EGLSurfaceTest.PresentLayoutTransitionWithMSAA/* Bug: b/153885625 Bug: angleproject:42262606 Bug: angleproject:42265256 Bug: b/229689340 Bug: angleproject:42265697 Change-Id: Ifad8aea8548fa7bfac27941812c435b2af655309 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6277445 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Igor Nazarov <i.nazarov@samsung.com>
Shahbaz Youssefi 1a0c9db3 2025-02-27T10:43:00 Vulkan: Disable monolithic pipeline creation with GPL As it violates OpenGL ES rules. This change also removes Vulkan perf counter tests that attempt to verify that warmed up programs hit the cache... this fails in non-trivial ways especially with graphics pipeline library due to: - Warm up tasks being async, they may finish after the test reads the perf counters to set expectations - Some drivers report a cache miss when fast-linking libraries... but likely they don't even look at the cache (so both hit and miss would have been inaccurate) - There is no 100% guarantee that the warmup really leads to a draw-time cache hit. Things are made worse by https://chromium-review.googlesource.com/c/angle/angle/+/5421594 because we don't necessarily even wait for the warm up tasks if ANGLE's view of the pipeline description doesn't match what was used for warm up (even if internally to the driver some of the state does not affect the binary blobs). Bug: angleproject:42265839 Change-Id: Iaf96e4f64e2187abc666ff07fe1304d7474a0e86 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6309696 Reviewed-by: Charlie Lao <cclao@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com>
Mark Lobodzinski d50cd35e 2025-02-20T08:29:07 Tests: Add expectations file for angle_trace_tests Skipping trace tests was handled in the TracePerfTest source and is now specified in angle_trace_tests_expectations.txt. Bug: b/398048048 Change-Id: Idbf5e95e74699374eb46330dc3880a0c2dfc9bc1 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6302912 Reviewed-by: Cody Northrop <cnorthrop@google.com> Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 97fc5534 2025-03-05T07:04:06 Roll Chromium from c3f04995b4b8 to 368392cfc394 (577 revisions) https://chromium.googlesource.com/chromium/src.git/+log/c3f04995b4b8..368392cfc394 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/081449739f..9afcd7944d * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/ea220da186..0224bdb2e3 * buildtools/linux64: git_revision:4a8016dc391553fa1644c0740cc04eaac844121e..git_revision:eabc4de478e68adce5a645261aadbb00f2994f14 * buildtools/mac: git_revision:4a8016dc391553fa1644c0740cc04eaac844121e..git_revision:eabc4de478e68adce5a645261aadbb00f2994f14 * buildtools/win: git_revision:4a8016dc391553fa1644c0740cc04eaac844121e..git_revision:eabc4de478e68adce5a645261aadbb00f2994f14 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/67874c0c46..d8f523232f * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/2b3cce7b2a..7347dc7bf0 * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/1a3be5fe47..518773bc43 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/f53d073a6d..6d817fd7f4 * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/a02de4d0d9..a35441f9bb * third_party/nasm: https://chromium.googlesource.com/chromium/deps/nasm.git/+log/f477acb104..767a169c88 * third_party/r8/cipd: LVdu8kozId1Vv9Mbx69A8KonHqt9h0WSBb32X-UElEEC..w5KUJIdByRgBQ6coQA_wTY1rmuuZ8IMvkfVpctohUIkC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/a42ecdc19f..46287405a3 * third_party/siso/cipd: git_revision:3d58d66552de848b17cd585cfa6d5018124892ea..git_revision:ef01a689b77e0a3c98e841310bf3cdea737707ab * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/802e25c33a..3c16f5c569 * tools/luci-go: git_revision:ca20346b3e3d0ac7f06cded05d8d06625b01867e..git_revision:b7196a984610cef94ac3f0d38d1a9527469bdebc * tools/luci-go: git_revision:ca20346b3e3d0ac7f06cded05d8d06625b01867e..git_revision:b7196a984610cef94ac3f0d38d1a9527469bdebc * tools/luci-go: git_revision:ca20346b3e3d0ac7f06cded05d8d06625b01867e..git_revision:b7196a984610cef94ac3f0d38d1a9527469bdebc * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/c32d180b35..5dae5159e2 * tools/skia_goldctl/linux: KnSU1X1UW0ccKC3nnReCfxj4qzjIxicmwJwlgK9o5ggC..uLQB_1WxcmRdlgGWxlAm-iVcWjyluWWVqk9bd5iOK6wC * tools/skia_goldctl/mac_amd64: YN53h8DsYeYloUN2eiOm_LnrySkcSwRDIYkdORdOJnsC..dd92wAzkVOkqYNdHKbG1PgtODtzTfTAM-IdVDacENC8C * tools/skia_goldctl/mac_arm64: SK2PbPuoemUqSfsJ6A-VxlCalkoil6Wee9eEnJ4nYzYC..ZhEAr6v2tWN1oxK6leQvyRjaNwUi4vrXZAyCwv5veegC * tools/skia_goldctl/win: Mn_CajZS-7Y13Io8vvrhRHowS8C3sKwCGTTmyKNR6FoC..LZpmI-6e2-R1o2X3Zgl_O54JicwHEzFp8T_XTBBs8zoC No update to Clang. Bug: None Tbr: solti@google.com Change-Id: I3230fff6824276a4ae9147a0a0b3091cf2bd6234 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6324787 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Yuxin Hu 6b10ae33 2025-03-03T14:41:21 Remove the unused SkippedSyncvalMessage Below tests from the two bugs angleproject:42264934: FramebufferFetchES31.BasicInout_NonCoherent/ES3_1_Vulkan angleproject:42264929: MultisampledRenderToTextureES3Test.RenderbufferDrawThenBlitDepthStencilOnly/ES3_Vulkan No longer fails due to VVL errors. Tested on Pixel 8. Remove them from the kSkippedSyncvalMessages list. Bug: angleproject:42264929 Bug: angleproject:42264934 Bug: angleproject:391284743 Change-Id: I4369eba5ef2a056b4085fced6419e7add7a5c279 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6317223 Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Yuxin Hu <yuxinhu@google.com> Auto-Submit: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Aurora Zhang 4fae3323 2025-03-03T14:21:07 ValidateEGLImageObject should not skip 3D EGLImage * Vulkan and GL backends already support 3D EGLImage, so remove related part in ValidatioinEGLImageObject. * Add a new end2end test for 3D EGLImage. Bug: angleproject:399774384 Change-Id: I6c39298a2f2d4c2dded2d6ddd8b98cdb8a22616a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6311581 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Auto-Submit: Aurora Zhang <Aurora.Zhang@arm.com>
Amirali Abdolrashidi ae567733 2025-02-26T19:09:14 Vulkan: Make use of VK_EXT_device_fault if exists This Vulkan extension, if available, can provide further details about the device in case of VK_ERROR_DEVICE_LOST. * Added the following ANGLE feature: supportsDeviceFault * It shows whether the extension VK_EXT_device_fault is supported and that the deviceFault bit is enabled on the physical device. * Added the Vulkan entry point for the following function: * vkGetDeviceFaultInfoEXT * Added the following to the renderer: * mFaultFeatures (device feature) * retrieveDeviceLostDetails(); to log information regarding the following if the appropriate support is available: * Address faults * Vendor-specific faults * Vendor binary dump (logged in hex format) * Added RetrieveDeviceLostInfoFromDevice() to vk_renderer.cpp to be used in Renderer::retrieveDeviceLostDetails(). * Updated ContextVk::handleError() to try to retrieve more info in case of DEVICE_LOST. Bug: b/399478440 Change-Id: If8d8e04001dabbe775c023f9922c44ef2205317e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6305888 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
Solti b6301fb1 2025-03-04T22:04:53 Manual roll vulkan-deps from 1f5d4f5673a3 to 898a2304cea9 (1 revision) Manual roll requested by solti@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/1f5d4f5673a3..898a2304cea9 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/cc4bfd761e025ff14ae329c1b1dbbf24e4f0922b..8496ed5028cee8c5e5f18cc791766f6b454609fb If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: b/400789178 Bug: b/399867824 Tbr: solti@google.com Change-Id: I375095773761362f98e6679c4297d3a58c4e5f11 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6320900 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Solti Ho <solti@google.com>
Amirali Abdolrashidi 2e65d3d4 2025-02-03T16:26:46 Vulkan: Fine-tune submission for multiple RPs This CL aims to fine-tune submission based on a certain command buffer size. This allows us to perform one submission for multiple smaller render passes. * Added mCommandsPendingSubmissionCount to ContextVk. * In ContextVk::syncState(), preferSubmitAtFBOBoundary is only used if the render pass pending command count exceeds the threshold: kMinCommandCountToSubmit * Currently set to 32. * For now, we still submit if the command is a clear (for example glClearBufferfv()). * For now, we also still submit if the command is an invalidate (for example, glInvalidateFramebuffer()). * In ContextVk::flushImpl(), if the pending command count exceeds the threshold (kMinCommandCountToSubmit) and the device is found to be idle, the work is submitted to keep the device busy. * Modified the following unit test from VulkanPerformanceCounterTest: VerifySubmitCounterForSwitchUserFBOToDirtyUserFBO * Since there is now a minimum command count for submission, the number of draw calls has been changed so that the submission is still issued at the new FBO boundary. * After this CL, life_is_strange shows the following improvements: (From the latest measurements) * +19% wall_time * +38% cpu_time Bug: angleproject:42265052 Change-Id: I18452cc1d39ca7e0ac376f6012974b498153cce8 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6182927 Reviewed-by: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Roman Lavrov 729b55ba 2025-03-04T10:45:34 Tests: Fix --gtest_repeat reporting Pass on intermediate Fail When running with --gtest_repeat=N, the same test is executed multiple times and the harness was overwriting a previous Fail status with a subsequent Pass. Also made Android logging more clear. Bug: None Change-Id: Ib1d71ca89e9e9b2af8f6a0df2c9e280b86143265 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6320657 Reviewed-by: Yuxin Hu <yuxinhu@google.com>
angle-autoroll 1cc27b60 2025-03-04T18:02:28 Manual roll vulkan-deps from 80732b88bef9 to 1f5d4f5673a3 (1 revision) Manual roll requested by solti@google.com https://chromium.googlesource.com/vulkan-deps.git/+log/80732b88bef9..1f5d4f5673a3 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/2d1626fcdeec21134adeecca92e286e6b235bd05..cc4bfd761e025ff14ae329c1b1dbbf24e4f0922b If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com Change-Id: I0b6c2437d1cac813e9b732afbb5b9c965f9ce46a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6320642 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll 73992d71 2025-03-04T07:45:58 Roll Chromium from 91a51a25fcad to c3f04995b4b8 (426 revisions) https://chromium.googlesource.com/chromium/src.git/+log/91a51a25fcad..c3f04995b4b8 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/e965c4ffb4..081449739f * buildtools: https://chromium.googlesource.com/chromium/src/buildtools.git/+log/b248db940e..ea220da186 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/f81aaec981..67874c0c46 * third_party/android_deps: https://chromium.googlesource.com/chromium/src/third_party/android_deps/+log/669df69264..2b3cce7b2a * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/93e56257a5..1a3be5fe47 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/85ec2718b5..f53d073a6d * third_party/libc++/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/7f8b68f91c..ac66645101 * third_party/r8/d8/cipd: a5lzGHzibplY-YfBMiaHgYRnmll4wB1csMwXCzHMoH8C..LVdu8kozId1Vv9Mbx69A8KonHqt9h0WSBb32X-UElEEC * third_party/rust: https://chromium.googlesource.com/chromium/src/third_party/rust/+log/7f2e443447..a42ecdc19f * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/786a0cdb02..802e25c33a * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/cab8061a80..c32d180b35 * tools/skia_goldctl/linux: GGRZJWa6xkrq-E8sKElWsbFz5h_MzyIClxLus3TIbPgC..KnSU1X1UW0ccKC3nnReCfxj4qzjIxicmwJwlgK9o5ggC * tools/skia_goldctl/mac_amd64: QUB-1pP_ki7pa9VtWMiQw23KsIOTOsrqsjod0ic_1s8C..YN53h8DsYeYloUN2eiOm_LnrySkcSwRDIYkdORdOJnsC * tools/skia_goldctl/mac_arm64: op7z6olEAHR9u_jp-NHnWh2L1NG7kE-IPBClH7ExbQ8C..SK2PbPuoemUqSfsJ6A-VxlCalkoil6Wee9eEnJ4nYzYC * tools/skia_goldctl/win: iEvrlp9kgIVZSE_ZhAvv6u6WFNTWozqp9tRnLQ6bSzQC..Mn_CajZS-7Y13Io8vvrhRHowS8C3sKwCGTTmyKNR6FoC No update to Clang. Bug: None Tbr: solti@google.com Change-Id: I601acf3cd0bb499ad713a8c57b14ffac56ac8137 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6320677 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Hailin Zhang bd8bc105 2025-02-19T18:08:32 vulkan: disable pipeline cache data serialization for nvidia device. we still see the big cache data issue after driver version 520. rename hasEffectivePipelineCacheSerialization to skipPipelineCacheSerialization. Bug: b/358380399 Change-Id: Idd8354f95c3eb4c2e58678a4cf50c8b6af20f371 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6284126 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Amirali Abdolrashidi <abdolrashidi@google.com> Commit-Queue: Hailin Zhang <hailinzhang@google.com>
Charlie Lao 9df57ec5 2025-02-28T14:35:01 Vulkan: Limit max vector size of mEmptySlotBits to 4 Add another safety guard: in case of some uncommon usage case that we end up with one buffer/texture is part of many descriptorSets, skip the tracking logic in SharedCacheKeyManager to avoid the excessive overhead associated with it. The only downside is that when BufferBlock gets destroyed, we will not able to immediately destroy all cached descriptorSets that it is part of. They will still gets evicted later on if needed (see evictStaleDescriptorSets for detail). Based on 300+ app traces we have, this appears very rare situation. Also made this behavior limited to DescriptorSetCacheManager, so that FramebufferCacheManager will not get affected. FramebufferCacheManager does not have any cache eviction, so it is important that we always destroy cache when texture is destroyed. Bug: b/293297177 Bug: b/384839847 Change-Id: I0f1eb21b014f83675b14fb59ab59b5c694a421e9 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6314161 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
angle-autoroll d254f6dd 2025-03-03T16:31:43 Manual roll Chromium from cbb59f8b903a to 91a51a25fcad (60 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/cbb59f8b903a..91a51a25fcad If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependency * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/2f5bf11b5c..a02de4d0d9 No update to Clang. Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: I445dfd5443bc3e55b1ad7c6c4b67c69bb4f3dc30 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6318009 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Yuly Novikov <ynovikov@chromium.org>
angle-autoroll 6f6c7d93 2025-03-03T15:00:51 Manual roll Chromium from d8add19f010a to cbb59f8b903a (950 revisions) Manual roll requested by ynovikov@google.com https://chromium.googlesource.com/chromium/src.git/+log/d8add19f010a..cbb59f8b903a If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/chromium-angle-autoroll Please CC angle-team@google.com,solti@google.com,ynovikov@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Changed dependencies * build: https://chromium.googlesource.com/chromium/src/build.git/+log/4aa3d0d3cc..e965c4ffb4 * testing: https://chromium.googlesource.com/chromium/src/testing/+log/486f978d15..f81aaec981 * third_party/android_build_tools/error_prone/cipd: nMr_RGT4rigGBhQsXW9PYfo20Zi0ABB1XBIdMvKrtkoC..yV2AWEuHgVYgavFYLJw7j7TY-u0ti8S84sQtfQ_2Wo0C * third_party/android_build_tools/lint/cipd: Gj-bf0mbp-Xwrhdet_cfri4Ubb-8PgONVeBw6aXt10MC..odZaAzq5aTldQyS4zrVQBok4BHtqZUpxdhVHlZCO0ukC * third_party/android_build_tools/manifest_merger/cipd: kSLW7TCDnPXiA8K_534GKlsaIZOkGd_CSDf1sBwb-3cC..DIy35BIO4jvsL0DDQvMnUdDC1rep8uWzgKeSHejYdKAC * third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/96e731bf12..93e56257a5 * third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/c4e7c8717c..85ec2718b5 * third_party/fuchsia-sdk/sdk: version:27.20250207.1.1..version:27.20250301.0.1 * third_party/llvm-libc/src: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libc.git/+log/b1fcd9bd08..2f5bf11b5c * third_party/r8/cipd: a5lzGHzibplY-YfBMiaHgYRnmll4wB1csMwXCzHMoH8C..LVdu8kozId1Vv9Mbx69A8KonHqt9h0WSBb32X-UElEEC * third_party/siso/cipd: git_revision:b146378738dc716f49267d22ed7b7953cdbccecb..git_revision:3d58d66552de848b17cd585cfa6d5018124892ea * tools/android: https://chromium.googlesource.com/chromium/src/tools/android/+log/6655febf26..e5dbe2f5d9 * tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang.git/+log/d040e7b4f7..786a0cdb02 * tools/luci-go: git_revision:0cddbdc27507a17134e1e038f938b62d0f509756..git_revision:ca20346b3e3d0ac7f06cded05d8d06625b01867e * tools/luci-go: git_revision:0cddbdc27507a17134e1e038f938b62d0f509756..git_revision:ca20346b3e3d0ac7f06cded05d8d06625b01867e * tools/luci-go: git_revision:0cddbdc27507a17134e1e038f938b62d0f509756..git_revision:ca20346b3e3d0ac7f06cded05d8d06625b01867e * tools/perf: https://chromium.googlesource.com/chromium/src/tools/perf/+log/31e7c132a8..cab8061a80 * tools/skia_goldctl/linux: cFP5_MeKETBLhyiZ3wrHD1ei0WT9jfIt4d_zmFFDlL0C..GGRZJWa6xkrq-E8sKElWsbFz5h_MzyIClxLus3TIbPgC * tools/skia_goldctl/mac_amd64: 9ZKSPWL0BFFJ9i-XXta9akbpsxgQzTvJFPOSLaFXrIgC..QUB-1pP_ki7pa9VtWMiQw23KsIOTOsrqsjod0ic_1s8C * tools/skia_goldctl/mac_arm64: ocDZkono_-0H7--idWYeYTAFQeO3RVx7ugf5aj4Y4sYC..op7z6olEAHR9u_jp-NHnWh2L1NG7kE-IPBClH7ExbQ8C * tools/skia_goldctl/win: nkeh5UQvxZz54dBmhgRp3xrCFIEaVW45Smum7g2NkJIC..iEvrlp9kgIVZSE_ZhAvv6u6WFNTWozqp9tRnLQ6bSzQC No update to Clang. Bug: None Tbr: solti@google.com,ynovikov@google.com Change-Id: I117ff18759c023ad484e5f8633a5b24d5bfde49a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6318007 Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
Hans Wennborg 1f4708b2 2025-02-28T16:38:36 Fix nullptr argument to std::string constructor Passing nullptr to std::string's constructor is not allowed and the latest libc++ version warns about it. Bug: chromium:399683086 Change-Id: Id43d2d58b8e9df99a811345e46cfe0d8b60c0cca Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6311612 Reviewed-by: Yuly Novikov <ynovikov@chromium.org> Commit-Queue: Yuly Novikov <ynovikov@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org> Auto-Submit: Hans Wennborg <hans@chromium.org>
angle-autoroll 19b35fcb 2025-03-03T10:01:01 Roll vulkan-deps from 040c4735c51c to 80732b88bef9 (10 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/040c4735c51c..80732b88bef9 Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/0b7c079b32f676b57e92a8ded374976842985116..99ee11b0106b48f06fb9e2a324ba928b8316cc33 https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/f82d29981c0b0136adfaa7863df485a705c80c84..3346bb2280a3a132403641d70f6cbedc6f85365a https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/d3bfa4b9b639c47ffaee7c1c1b76044c92fa66cc..b1140ad29a5e73ec3b938632fbc5ceeed2027103 https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Utility-Libraries/+log/2d8f273ebd4b843c402d9ee881616895b854e42f..5f41f2a9bf3589dc5d1791d42ff46f1abe873f2b https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/7d5cab3ff7ea5a8b62dc94df72141606539344fc..2d1626fcdeec21134adeecca92e286e6b235bd05 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,solti@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: None Tbr: solti@google.com Change-Id: I158a460332563aeaaa775e6364a3506918d4dfcc Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6316434 Bot-Commit: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: angle-autoroll <angle-autoroll@skia-public.iam.gserviceaccount.com>
angle-autoroll aa697ed0 2025-02-28T11:05:55 Manual Roll vulkan-deps from c1c31f to 040c47 (9 revisions) https://chromium.googlesource.com/vulkan-deps.git/+log/c1c31f4d17a9..040c4735c51c Also rolling transitive DEPS: https://chromium.googlesource.com/external/github.com/KhronosGroup/glslang/+log/8b822ee8ac2c3e52926820f46ad858532a895951..0b7c079b32f676b57e92a8ded374976842985116 https://chromium.googlesource.com/external/github.com/LunarG/VulkanTools/+log/e1fcaef1e8f2e4f4ccbfb58ad8f20e807368de76..f82d29981c0b0136adfaa7863df485a705c80c84 https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools/+log/f289d047f49fb60488301ec62bafab85573668cc..d3bfa4b9b639c47ffaee7c1c1b76044c92fa66cc https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers/+log/4e7b0c905b1a0401e24333800937cc8792efa037..7d5cab3ff7ea5a8b62dc94df72141606539344fc If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/vulkan-deps-angle-autoroll Please CC angle-team@google.com,yuxinhu@google.com on the revert to ensure that a human is aware of the problem. To file a bug in ANGLE: https://bugs.chromium.org/p/angleproject/issues/entry To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md Bug: b/399191283 Bug: b/399969262 Tbr: yuxinhu@google.com Change-Id: I150f1cb9c56f014628c1a2aa06c1981b71d2d605 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312337 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Solti Ho <solti@google.com>
Shahbaz Youssefi 8dd4a6e8 2025-02-28T16:50:51 Translator: Remove rect and 2DMS* images from atomic ops They are a relic of desktop GLSL support. Bug: angleproject:349994211 Change-Id: I111467fea111d22e2d12003d639bec268e418b44 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6313639 Commit-Queue: Cody Northrop <cnorthrop@google.com> Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: Cody Northrop <cnorthrop@google.com> Auto-Submit: Shahbaz Youssefi <syoussefi@chromium.org>
Cody Northrop 4bfb9da6 2025-02-28T12:49:28 Revert "Reland "Add GL_BGRA_EXT as a sized renderable format"" This reverts commit 8f2fbbd1a0d16471596afad57c88f950a1ee3032. Reason for revert: http://anglebug.com/399913714 Original change's description: > Reland "Add GL_BGRA_EXT as a sized renderable format" > > This reverts commit 22dfe435daa7c680c07bb8d4f1d98ab765e60ad0. > > Reason for revert: Fixed mapping back to BGRA_EXT for GL backend > > Original change's description: > > Revert "Add GL_BGRA_EXT as a sized renderable format" > > > > This reverts commit 80093a7d8f850c3ab551ddb4972c2f1f27511433. > > > > Reason for revert: suspect for blocking rolling ANGLE into Chroimum > > https://chromium-review.googlesource.com/c/chromium/src/+/6283973 > > https://ci.chromium.org/ui/p/chromium/builders/try/chromeos-amd64-generic-rel-gtest/372754/overview > > > > Original change's description: > > > Add GL_BGRA_EXT as a sized renderable format > > > > > > dEQP tests were updated to cover GL_BGRA_EXT as a sized renderable > > > format. It was apparently always supposed to be, based on the > > > wording of the spec. > > > > > > This CL adds that support and updates expectations, along with a few > > > extra tests. > > > > > > Includes contributions from Robic.Sun@arm.com. > > > > > > Test: angle_end2end_tests, angle_deqp_*_tests > > > Bug: b/42267264 > > > Bug: angleproject:394384906 > > > Change-Id: Ia10bcd61f66c5d99a3d27a2cfd6008c991ddcaa7 > > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6235444 > > > Reviewed-by: Geoff Lang <geofflang@chromium.org> > > > Commit-Queue: Cody Northrop <cnorthrop@google.com> > > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > > > Bug: b/42267264 > > Bug: angleproject:394384906 > > Change-Id: I64572361cfed33b4ea17eabf278f580471d045c2 > > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6285628 > > Auto-Submit: Yuly Novikov <ynovikov@chromium.org> > > Commit-Queue: Yuly Novikov <ynovikov@chromium.org> > > Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> > > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > > Bug: b/42267264 > Bug: angleproject:394384906 > Change-Id: I1bd9df904d93fd54286cbfce53fe89db89e842b9 > Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310699 > Commit-Queue: Cody Northrop <cnorthrop@google.com> > Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> > Reviewed-by: Geoff Lang <geofflang@chromium.org> Bug: b/42267264 Bug: angleproject:394384906 Bug: angleproject:399913714 Change-Id: I9f79f39a6d9cba3b23c261005bc3e012d70cd1cf No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312977 Auto-Submit: Cody Northrop <cnorthrop@google.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Roman Lavrov 3c08ed1e 2025-02-28T10:31:53 Cleanup: clarify ShouldReportDebugMessage logic Bug: angleproject:391284743 Change-Id: I0900bc834d2bfa177f98ddb75747ae4bc1578297 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6312881 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Roman Lavrov <romanl@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Liza Burakova cb81b2b2 2025-02-27T16:52:29 Set mMappedState offset and size to actual mapped offset + size Bug: angleproject:383356846 Change-Id: I68a4b4d3cb4c29071c9fb593b19fb55ded010950 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6308949 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Liza Burakova <liza@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao 65343c4c 2025-02-27T11:23:04 Vulkan: Improve ConvertImageLayoutToVkImageLayout() This CL removes supportsMixedReadWriteDepthStencilLayouts feature flag. This feature flag was introduced when ANGLE only requires vulkan 1.0. But now we require vulkan 1.1 and this is part of vulkan 1.1 core spec. So it is no longer needed and wasting CPU cycles to check this every time ConvertImageLayoutToVkImageLayout() is called. With supportsMixedReadWriteDepthStencilLayouts removed, convert from ImageLayout to VkImageLayout no longer needs renderer parameter. The layout information in kImageMemoryBarrierData is never modified by renderer at run time. So the renerer arguments has been removed in a lot of places, avoids another pointer de-reference. Bug: b/384839847 Change-Id: I5a89a890c0c0a1f99d2fdc1b2a85baf7de5c28bf Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310839 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Commit-Queue: Charlie Lao <cclao@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>
Charlie Lao e6d28755 2025-02-27T11:09:10 Vulkan: Use VkImageLayout in DescriptorInfoDesc DescriptorInfoDesc is part of the cache key for descriptorSet cache. Right now it uses ImageLayout for DescriptorInfoDesc::imageLayoutOrRange. There are cases where two ImageLayout have the exact same VkImageLayout, which end up with cache miss. Switch to use VkImageLayout will make it cache hit. Given that this field is uint32_t, we are not really getting any benefit by using ImageLayout. Bug: b/384839847 Change-Id: I14060c3faab701b76a554a1e3a07aff44e25d7cd Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310838 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>
Charlie Lao 055123f8 2025-02-27T10:45:56 Vulkan: Don't maintain SharedCacheKeyManager for BufferBlock Dynamic descriptor type uses the underlying BufferBlock in the descriptorSet. There could be many BufferHelper objects sub-allocated from the same BufferBlock. And each BufferHelper could combine with other buffers to form a descriptorSet. This means the combination for BufferBlock could potentially be very large, in thousands with some app traces like seeing in honkai_star_rail. The overhead of maintaining mDescriptorSetCacheManager for BufferBlock could be too big. In this CL I have chosen to not maintain mDescriptorSetCacheManager in the BufferBlock. The only downside is that when BufferBlock gets destroyed, we will not able to immediately destroy all cached descriptorSets that it is part of. They will still gets evicted later on if needed (see evictStaleDescriptorSets for detail). After this CL, running with all app traces we have, the max vector size of SharedCacheKeyManager::mEmptySlotBits is no more than 2, versus ~70s before the CL. Bug: b/384839847 Bug: b/293297177 Bug: b/237686097 Change-Id: I7c7c91cd0aeacba4145575ac4270b713bf38b742 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/6310837 Reviewed-by: Yuxin Hu <yuxinhu@google.com> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org> Commit-Queue: Charlie Lao <cclao@google.com>