Skip to content

[Impeller] Playgrounds leak a VMA-allocated texture #134678

@matanlurey

Description

@matanlurey

At first I thought it was my PR (flutter/engine#45654), but it appears to happen at HEAD (which at this moment in time is 33a24fff8129a5f42fabcde2e91e5da595ea2642).

How to reproduce:

  1. Get a Linux VM (I couldn't reproduce this on MacOS+MoltenVK) or machine.

  2. Setup a simple host engine configuration

    (I reproduced with ./tools/gn --runtime-mode debug --unopt)

  3. Build just impeller_unittests:

    ninja -C ../out/host_debug_impeller_vulkan impeller_unittests

  4. Try running the Play/RendererTest.*/Vulkan tests a few thousand times:

    ../out/host_debug_impeller_vulkan/impeller_unittests \
        --gtest_filter="Play/RendererTest.*/Vulkan" \
        --gtest_repeat=1000

I've seen some of these following flaky/crash variants:

[ RUN      ] Play/RendererTest.VertexBufferBuilder/Vulkan
zsh: IOT instruction
Repeating all tests (iteration 27) . . .

Note: Google Test filter = Play/RendererTest.*/Vulkan
[==========] Running 16 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 16 tests from Play/RendererTest
[ RUN      ] Play/RendererTest.CanCreateBoxPrimitive/Vulkan
[FATAL:flutter/testing/test_timeout_listener.cc(45)] Check failed: delay < timeout_. Test Play/RendererTest.CanCreateBoxPrimitive/Vulkan/4-byte object <02-00 00-00> did not complete in 300 seconds and is assumed to be hung. Killing the test harness.
zsh: IOT instruction  ../out/host_debug_impeller_vulkan/impeller_unittests  --gtest_repeat=1000

It's not always the same test cases, so I'm guessing it's a general issue and not isolated to specifics.

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work listc: flakeTests that sometimes, but not always, incorrectly passe: impellerImpeller rendering backend issues and features requestsengineflutter/engine related. See also e: labels.team-engineOwned by Engine teamtriaged-engineTriaged by Engine team

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions