[Interest] TSAN findings in a simple QApplication/QMetaObject::invokeMethod example

Thiago Macieira thiago.macieira at intel.com
Sat Nov 5 03:07:57 CET 2022


On Friday, 4 November 2022 00:27:27 PDT Dennis Luehring wrote:
> side question: TSAN seems not that relevant for Qt-user testing - nearly
> no blogs, tutorials on the internet, why is that? does TSAN not work
> very good with Qt?

It does not, unless you build Qt itself, and few people do that.

> i've have build Qt 6.4 from source with TSAN under Ubuntu 22.04
> it didn't really changed my TSAN Warnings (the example prints
> QT_VERSION_STR: 6.4.0)

The vast majority of those findings appear to come from Glib. Most likely, TSan 
is unable to make heads or tails of what's going on. Fortunately, for that 
one, you can simply do an 
	export QT_NO_GLIB=1 
and have Qt use its own event loop, which should improve the results.

There are also some traces that stop inside libdbus. You may need to build 
that one too with TSan. Either way, it's impossible to take any action when it 
prints only 1 or 2 frames of the trace. I expect at least 10 frames to provide 
context.

-- 
Thiago Macieira - thiago.macieira (AT) intel.com
  Cloud Software Architect - Intel DCAI Cloud Engineering





More information about the Interest mailing list