[CRITICAL] KIO Test "threadtest" can enter into infinite loop

Nicolás Alvarez nicolas.alvarez at gmail.com
Sun Nov 8 20:01:37 UTC 2015


2015-11-07 7:23 GMT-03:00 David Faure <faure at kde.org>:
> On Saturday 07 November 2015 10:36:18 David Faure wrote:
>> On Saturday 07 November 2015 11:17:31 Ben Cooksley wrote:
>> > Hi all,
>> >
>> > It appears the test running with the binary name of "threadtest" in
>> > kio has a grave bug which can lead to it entering into an infinite
>> > loop.
>> >
>> > This was consuming virtually the entire resources of one builder with
>> > old hung processes, and the whole core of another builder -
>> > drastically limiting the capabilities of the CI system (even though
>> > KIO was not being built at the time).
>> >
>> > Can someone please investigate? Manual intervention (with kill -9) is
>> > needed to remove these hung processes.
>>
>> It of course works fine on my own machine.
>>
>> And I just tried running it on LinuxNode2, in ~/builds/kio/stable-kf5-qt5/build/autotests
>> (after sourcing ~/kio.env which I just generated), and it ran fine (multiple times).
>>
>> Any suggestion on how / where to hit the issue?
>
> OK, it happens in kf5-qt5 rather than in stable-kf5-qt5
>
> One of the KIO-using threads seems stuck in QProcess.... smells like a Qt bug?
> Or is there a reason why starting a new process or creating a new pipe would
> sometimes fail (some ulimit?)
>
> Context: this test starts 20 threads at once, each of which starts a QProcess
> (using startDetached) (for the kioslave binary). It works most of the time, but sometimes
> hangs with the bt below.
>
> (gdb) bt
> #0  0x00007ffff4bdd49d in read () from /lib/x86_64-linux-gnu/libc.so.6
> #1  0x00007ffff6f27637 in read () from /usr/lib/x86_64-linux-gnu/libasan.so.1
> #2  0x00007ffff565a2ed in qt_safe_read (fd=43, data=0x7fffddf14cc0, maxlen=1) at ../../include/QtCore/5.5.1/QtCore/private/../../../../../src/corelib/kernel/qcore_unix_p.h:265

Could it be an asan bug? Have you tried compiling this without address
sanitizer?

-- 
Nicolás


More information about the Kde-frameworks-devel mailing list