Skyrocketing test run times
Nicolas Fella
nicolas.fella at gmx.de
Wed Feb 4 11:13:55 GMT 2026
On 2/4/26 10:16 AM, Ben Cooksley wrote:
> On Wed, Feb 4, 2026 at 10:05 PM Vlad Zahorodnii
> <vlad.zahorodnii at kde.org> wrote:
>
> On 2/4/26 10:26 AM, Ben Cooksley wrote:
>> On Wed, Feb 4, 2026 at 9:07 PM Ben Cooksley <bcooksley at kde.org>
>> wrote:
>>
>> On Wed, Feb 4, 2026 at 8:25 PM Vlad Zahorodnii
>> <vlad.zahorodnii at kde.org> wrote:
>>
>> Hello,
>>
>>
>> HI Vlad,
>>
>>
>> Over approximately the past weekend something happened in
>> our CI and now
>> it takes quite long time for tests to run. For example,
>> in kwin, we have
>> a test that used to run for about 20 seconds, and now it
>> takes about 5
>> or so minutes to finish running. Speaking for kwin, there
>> were no
>> changes that could increase test run times so dramatically.
>>
>> January 26th:
>>
>> Start 61: kwin-testOutputChanges
>> 61/158 Test #61: kwin-testOutputChanges
>> ............................. Passed 19.36 sec
>>
>> January 29th:
>>
>> Start 61: kwin-testOutputChanges
>> 61/158 Test #61: kwin-testOutputChanges
>> ............................. Passed 43.93 sec
>>
>> January 30th:
>>
>> Start 61: kwin-testOutputChanges
>> 61/158 Test #61: kwin-testOutputChanges
>> ............................. Passed 45.91 sec
>>
>> Februrary 3rd:
>>
>> Start 61: kwin-testOutputChanges
>> 61/158 Test #61: kwin-testOutputChanges
>> ............................. Passed 254.19 sec
>>
>> FreeBSD appears to be fine.
>>
>> We suspect that test run times blew up due to enabling
>> LSAN in various
>> libraries (kwin itself has no LSAN enabled yet). The
>> issue doesn't
>> appear to be specific to only kwin, people reported that
>> they've seen
>> similar issues in other projects too. Maybe something
>> else happened to
>> CI that sysadmins will be able to clarify.
>>
>>
>> Nothing else happened to CI recently aside from the
>> enablement of LSAN.
>>
>> The underlying SUSE images were for Qt 6.10 at least last
>> rebuilt on January 25th, which is well before your "last
>> good" date.
>>
>> The only change to CI between January 30th and February 3rd
>> was fast_unwind_on_malloc=0 being added by default, even
>> though it is primarily for the benefit of LSAN.
>> I've now made changes to only set fast_unwind_on_malloc=0 if
>> LSAN is explicitly enabled for a repository - hard to tell if
>> that will fix the issue though as KWin takes a while to build.
>>
>>
>> For the record, as per
>> https://invent.kde.org/plasma/kwin/-/jobs/3958895 which completed
>> moments ago:
>
> That branch contained some other things that could interfere with
> test results. I started
> https://invent.kde.org/plasma/kwin/-/jobs/3959078 and yeah it
> looks like test run times are back to the Jan 29-30th level.
>
> So, it seems like fast_unwind_on_malloc=0 is the culprit then?
>
>
> Yes, quoting from https://source.android.com/docs/security/test/asan
>
> [quote]
> ASan uses a fast, frame-pointer-based unwinder to record a stack trace
> for every memory allocation and deallocation event in the program.
> Most of Android is built without frame pointers. As a result, you
> often get only one or two meaningful frames. To fix this, either
> rebuild the library with ASan (recommended!), or with:
>
> LOCAL_CFLAGS:=-fno-omit-frame-pointer
> LOCAL_ARM_MODE:=arm
>
> Or set ASAN_OPTIONS=fast_unwind_on_malloc=0 in the process
> environment. The latter can be very CPU-intensive, depending on the load.
> [/quote]
>
> That would align with what we're seeing here
Hi,
thanks for investigating this.
I'm a bit surprised that fast_unwind_on_malloc seems to have an effect
when LSAN is disabled. That said, we still should have the problem when
LSAN *is* enabled, no?
The reason I added fast_unwind_on_malloc=0 is because otherwise we would
sometimes get unusable backtraces from LSAN, so I would not want to lose
that.
A possible remedy could be to build Qt with ASAN support. That's one
additional flag in the buildsystem invokation. fast_unwind_on_malloc
still would make sense to cover system libraries, but maybe it would be
okay to do without that.
Cheers
Nico
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20260204/a363a482/attachment.htm>
More information about the Plasma-devel
mailing list