[Development] TSAN build of GLib+DBus+Qt 6.4 shows TSAN warnings
Dennis Luehring
dl.soluz at gmx.net
Tue Nov 22 17:16:58 CET 2022
[Thiago Macieira told me to move my Qt + TSAN diskussion from Interest mailinglist over here]
my System is a freshly installed Ubuntu 22.04, all updates
background: im currently testing a green-field 400kLOC project with ASAN and TSAN (in the future with MSAN)
there is some sort of simple communication server holding all my stuff together which is based on Qt
and this server is giving me some TSAN warnings from Qt code - i've compiled all relevant third parties which Qt is
using and Qt and my server itself with TSAN (in my case only GLib and DBus) to get rid of false-positives
later i will try to ASAN/TSAN test a very organic grown Qt5->Qt6 port of a ~1Mio LOC project
and hope to get rid of the most basic ASAN/TSAN findings before - at least with Qt dev branch so
the next upcoming releases are cleaner for my testing
currently a simple QApplication program throwing a good amount of TSAN warnings on start/exit
and i've got some other simple Qt unit-tests that contains more warnings
the hard part (for me) was first to build all the relevant dependecies with TSAN
Glib was easy to build and integrate into the Qt build - build-instructions + PKG_CONFIG_PATH with qt cmake = works
Qt cmake is directly detecting my installed Glib-build
DBus 1.12.20 took some dicussions to build (the lastest 1.15 is equaly built like Glib)
but DBus does not integrate as clean as GLib with PKG_CONFIG_PATH - i think that is related
to this bug https://bugreports.qt.io/browse/QTBUG-86283
so my first question is: how can i make cmake use my own build DBus lib like cmake did with Glib?
so these are my build steps with the resulting TSAN warnings at end (
Thiago Macieira will take a look in the coming days)
mkdir ~/qt6_dev
1. build Glib with TSAN
cd ~/qt6_dev
git clone https://gitlab.gnome.org/GNOME/glib.git
cd glib
git checkout 2.72.1
cd ..
mkdir glib-build
cd glib-build
meson setup ../glib -Dbuildtype=debug -Db_sanitize=thread --prefix
~/qt6_dev/glib-install
meson compile
meson install
2. build DBus with TSAN (and TSAN-Glib)
git clone https://github.com/freedesktop/dbus.git
cd dbus
git checkout dbus-1.12.20
cd ..
mkdir dbus-build
cd dbus-build
PKG_CONFIG_PATH=~/qt6_dev/glib-install/lib/x86_64-linux-gnu/pkgconfig
cmake ../dbus/cmake -DCMAKE_INSTALL_PREFIX=~/qt6_dev/dbus-install
-DCMAKE_CXX_FLAGS="-g -fno-omit-frame-pointer -fsanitize=thread"
-DCMAKE_C_FLAGS="-g -fno-omit-frame-pointer -fsanitize=thread"
-DCMAKE_EXE_LINKER_FLAGS="-fno-omit-frame-pointer -fsanitize=thread"
-DCMAKE_MODULE_LINKER_FLAGS="-fno-omit-frame-pointer -fsanitize=thread"
cmake --build . --parallel 6
cmake --install .
3. build Qt 6.4(with patch:
https://codereview.qt-project.org/c/qt/qtbase/+/442720 - my first ASAN finding) with TSAN
cd ~/qt6_dev
git clone git://code.qt.io/qt/qt5.git qt6
cd qt6
perl init-repository
git checkout v6.4.0
# apply patch
cd ..
mkdir qt6-build
cd qt6-build
PKG_CONFIG_PATH=~/qt6_dev/glib-install/lib/x86_64-linux-gnu/pkgconfig:~/qt6_dev/dbus-install/lib/pkgconfig
../qt6/qtbase/configure -debug -opensource -nomake examples -nomake
tests -sanitize thread -prefix ~/qt6_dev/qt6-install
cmake --build . --parallel 6
cmake --install .
problem: qt6 cmake ignores for unknown reasons my TSAN dbus lib so we
later use LD_LIBRARY_PATH to force TSAN dbus lib loading
4. build simple example qt_tsan_tests with TSAN
int main( int argc, char* argv[] )
{
QApplication app( argc, argv );
QWidget window;
window.resize( 320, 240 );
window.show();
return app.exec();
}
5. start example with
LD_LIBRARY_PATH=~/qt6_dev/dbus-install/lib:$LD_LIBRARY_PATH ./qt_tsan_tests
6. TSAN Output: https://pastebin.com/FHjrcQLS
qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
==================
WARNING: ThreadSanitizer: data race (pid=5889)
Read of size 4 at 0x7fdbf9d2d09c by main thread:
#0 _dbus_decrement_fail_alloc_counter /home/linux/qt6_dev/dbus/dbus/dbus-memory.c:269 (libdbus-1.so.3+0x97061)
#1 dbus_realloc /home/linux/qt6_dev/dbus/dbus/dbus-memory.c:608 (libdbus-1.so.3+0x979bc)
#2 reallocate_for_length /home/linux/qt6_dev/dbus/dbus/dbus-string.c:366 (libdbus-1.so.3+0x9a4d2)
#3 set_length /home/linux/qt6_dev/dbus/dbus/dbus-string.c:407 (libdbus-1.so.3+0x9a81b)
#4 open_gap /home/linux/qt6_dev/dbus/dbus/dbus-string.c:428 (libdbus-1.so.3+0x9a905)
#5 copy /home/linux/qt6_dev/dbus/dbus/dbus-string.c:1216 (libdbus-1.so.3+0x9f704)
#6 _dbus_string_copy_len /home/linux/qt6_dev/dbus/dbus/dbus-string.c:1386 (libdbus-1.so.3+0xa0b73)
#7 marshal_len_followed_by_bytes /home/linux/qt6_dev/dbus/dbus/dbus-marshal-basic.c:730 (libdbus-1.so.3+0x8f9b6)
#8 marshal_string /home/linux/qt6_dev/dbus/dbus/dbus-marshal-basic.c:762 (libdbus-1.so.3+0x8fac0)
#9 _dbus_marshal_write_basic /home/linux/qt6_dev/dbus/dbus/dbus-marshal-basic.c:844 (libdbus-1.so.3+0x8fd72)
#10 _dbus_type_writer_write_basic_no_typecode /home/linux/qt6_dev/dbus/dbus/dbus-marshal-recursive.c:1605 (libdbus-1.so.3+0x465cf)
#11 _dbus_type_writer_write_basic /home/linux/qt6_dev/dbus/dbus/dbus-marshal-recursive.c:2327 (libdbus-1.so.3+0x4810a)
#12 write_basic_field /home/linux/qt6_dev/dbus/dbus/dbus-marshal-header.c:318 (libdbus-1.so.3+0x3f5b6)
#13 _dbus_header_create /home/linux/qt6_dev/dbus/dbus/dbus-marshal-header.c:606 (libdbus-1.so.3+0x3ffe0)
#14 dbus_message_new_method_call /home/linux/qt6_dev/dbus/dbus/dbus-message.c:1375 (libdbus-1.so.3+0x4fb05)
#15 q_dbus_message_new_method_call /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:345 (libQt6DBus.so.6+0xc3959)
#16 QDBusMessagePrivate::toDBusMessage(QDBusMessage const&, QFlags<QDBusConnection::ConnectionCapability>, QDBusError*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusmessage.cpp:107 (libQt6DBus.so.6+0xc3959)
#17 QDBusConnectionPrivate::sendWithReplyAsync(QDBusMessage const&, QObject*, char const*, char const*, int) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:2137 (libQt6DBus.so.6+0x877ae)
#18 QDBusConnection::asyncCall(QDBusMessage const&, int) const /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:655 (libQt6DBus.so.6+0x4e485)
#19 QGenericUnixServices::QGenericUnixServices() /home/linux/qt6_dev/qt6/qtbase/src/gui/platform/unix/qgenericunixservices.cpp:359 (libQt6Gui.so.6+0xb0a4e5)
#20 QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:99 (libQt6XcbQpa.so.6+0x9d6e9)
#21 QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22 (libqxcb.so+0x2490)
#22 QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/linux/qt6_dev/qt6-build/include/QtCore/6.5.0/QtCore/private/../../../../../../qt6/qtbase/src/corelib/plugin/qfactoryloader_p.h:99 (libQt6Gui.so.6+0x2967d5)
#23 QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23 (libQt6Gui.so.6+0x296513)
#24 init_platform /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1191 (libQt6Gui.so.6+0x220b92)
#25 QGuiApplicationPrivate::createPlatformIntegration() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1471 (libQt6Gui.so.6+0x224585)
#26 QGuiApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1490 (libQt6Gui.so.6+0x224bdf)
#27 QApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:140 (libQt6Widgets.so.6+0x1926ef)
#28 QCoreApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:815 (libQt6Core.so.6+0x1b07fc)
#29 QGuiApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1514 (libQt6Gui.so.6+0x22ad1f)
#30 QApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:466 (libQt6Widgets.so.6+0x194506)
#31 QApplication::QApplication(int&, char**, int) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:454 (libQt6Widgets.so.6+0x194613)
#32 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:8 (qt_tsan_tests+0x31c4)
Previous write of size 4 at 0x7fdbf9d2d09c by thread T1 (mutexes: write M870):
#0 _dbus_decrement_fail_alloc_counter /home/linux/qt6_dev/dbus/dbus/dbus-memory.c:293 (libdbus-1.so.3+0x9721b)
#1 dbus_malloc /home/linux/qt6_dev/dbus/dbus/dbus-memory.c:467 (libdbus-1.so.3+0x9760a)
#2 _dbus_memdup /home/linux/qt6_dev/dbus/dbus/dbus-internals.c:569 (libdbus-1.so.3+0x89c7a)
#3 _dbus_decompose_path /home/linux/qt6_dev/dbus/dbus/dbus-object-tree.c:1305 (libdbus-1.so.3+0x5edef)
#4 dbus_message_get_path_decomposed /home/linux/qt6_dev/dbus/dbus/dbus-message.c:3407 (libdbus-1.so.3+0x55879)
#5 _dbus_object_tree_dispatch_and_unlock /home/linux/qt6_dev/dbus/dbus/dbus-object-tree.c:921 (libdbus-1.so.3+0x5df46)
#6 dbus_connection_dispatch /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4745 (libdbus-1.so.3+0x344e6)
#7 q_dbus_connection_dispatch /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:176 (libQt6DBus.so.6+0x85c11)
#8 QDBusConnectionPrivate::doDispatch() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1171 (libQt6DBus.so.6+0x85c11)
#9 QDBusConnectionPrivate::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) /home/linux/qt6_dev/qt6-build/src/dbus/DBus_autogen/include/moc_qdbusconnection_p.cpp:416 (libQt6DBus.so.6+0x4b240)
#10 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:610 (libQt6Core.so.6+0x23d2c7)
#11 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#12 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#13 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#14 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#15 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#16 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#17 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#18 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#19 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#20 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#21 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#22 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#23 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#24 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#25 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#26 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#27 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#28 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#29 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#30 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Location is global 'fail_alloc_counter' of size 4 at 0x7fdbf9d2d09c (libdbus-1.so.3+0x0000000e209c)
Mutex M870 (0x7b0c00001e60) created at:
#0 pthread_mutex_init ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:1227 (libtsan.so.0+0x4bee1)
#1 _dbus_platform_rmutex_new /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:120 (libdbus-1.so.3+0xb093e)
#2 _dbus_rmutex_new_at_location /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:63 (libdbus-1.so.3+0x77070)
#3 _dbus_connection_new_for_transport /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1288 (libdbus-1.so.3+0x2a5bc)
#4 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1826 (libdbus-1.so.3+0x2bd8f)
#5 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#6 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#7 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#8 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#9 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#10 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#11 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#12 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#13 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#14 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#15 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#16 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#17 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#18 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#19 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#20 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#21 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#22 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#23 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#24 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#25 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#26 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#27 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#28 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#29 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#30 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#31 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#32 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#33 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#34 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#35 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#36 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Thread T1 'QDBusConnection' (tid=5892, running) created by main thread at:
#0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
#1 QThread::start(QThread::Priority) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:707 (libQt6Core.so.6+0x491f6b)
#2 QDBusConnectionManager::QDBusConnectionManager() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:96 (libQt6DBus.so.6+0x4c931)
#3 innerFunction /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:40 (libQt6DBus.so.6+0x4f632)
#4 Holder /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:37 (libQt6DBus.so.6+0x4f632)
#5 instance /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:91 (libQt6DBus.so.6+0x4f632)
#6 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:73 (libQt6DBus.so.6+0x4f632)
#7 QDBusConnection::sessionBus() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:1133 (libQt6DBus.so.6+0x4f632)
#8 QGenericUnixServices::QGenericUnixServices() /home/linux/qt6_dev/qt6/qtbase/src/gui/platform/unix/qgenericunixservices.cpp:359 (libQt6Gui.so.6+0xb0a4cd)
#9 QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:99 (libQt6XcbQpa.so.6+0x9d6e9)
#10 QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22 (libqxcb.so+0x2490)
#11 QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/linux/qt6_dev/qt6-build/include/QtCore/6.5.0/QtCore/private/../../../../../../qt6/qtbase/src/corelib/plugin/qfactoryloader_p.h:99 (libQt6Gui.so.6+0x2967d5)
#12 QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23 (libQt6Gui.so.6+0x296513)
#13 init_platform /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1191 (libQt6Gui.so.6+0x220b92)
#14 QGuiApplicationPrivate::createPlatformIntegration() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1471 (libQt6Gui.so.6+0x224585)
#15 QGuiApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1490 (libQt6Gui.so.6+0x224bdf)
#16 QApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:140 (libQt6Widgets.so.6+0x1926ef)
#17 QCoreApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:815 (libQt6Core.so.6+0x1b07fc)
#18 QGuiApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1514 (libQt6Gui.so.6+0x22ad1f)
#19 QApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:466 (libQt6Widgets.so.6+0x194506)
#20 QApplication::QApplication(int&, char**, int) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:454 (libQt6Widgets.so.6+0x194613)
#21 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:8 (qt_tsan_tests+0x31c4)
SUMMARY: ThreadSanitizer: data race /home/linux/qt6_dev/dbus/dbus/dbus-memory.c:269 in _dbus_decrement_fail_alloc_counter
==================
==================
WARNING: ThreadSanitizer: data race (pid=5889)
Read of size 8 at 0x7b1400002858 by thread T1 (mutexes: write M870):
#0 _dbus_counter_get_size_value /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:276 (libdbus-1.so.3+0x68ea1)
#1 _dbus_transport_get_dispatch_status /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:1126 (libdbus-1.so.3+0x7a514)
#2 _dbus_transport_queue_messages /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:1172 (libdbus-1.so.3+0x7a855)
#3 _dbus_connection_get_dispatch_status_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4258 (libdbus-1.so.3+0x33053)
#4 dbus_connection_dispatch /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4591 (libdbus-1.so.3+0x33b94)
#5 q_dbus_connection_dispatch /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:176 (libQt6DBus.so.6+0x85c11)
#6 QDBusConnectionPrivate::doDispatch() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1171 (libQt6DBus.so.6+0x85c11)
#7 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (QDBusConnectionPrivate::*)()>::call(void (QDBusConnectionPrivate::*)(), QDBusConnectionPrivate*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x8f187)
#8 void QtPrivate::FunctionPointer<void (QDBusConnectionPrivate::*)()>::call<QtPrivate::List<>, void>(void (QDBusConnectionPrivate::*)(), QDBusConnectionPrivate*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x8f187)
#9 QtPrivate::QSlotObject<void (QDBusConnectionPrivate::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x8f187)
#10 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#11 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#12 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#13 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#14 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#15 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#16 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#17 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#18 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#19 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#20 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#21 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#22 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#23 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#24 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#25 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#26 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#27 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#28 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#29 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#30 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#31 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Previous write of size 8 at 0x7b1400002858 by main thread (mutexes: write M869):
#0 _dbus_counter_adjust_size /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:176 (libdbus-1.so.3+0x68aa9)
#1 free_counter /home/linux/qt6_dev/dbus/dbus/dbus-message.c:613 (libdbus-1.so.3+0x4d0b1)
#2 _dbus_list_foreach /home/linux/qt6_dev/dbus/dbus/dbus-list.c:770 (libdbus-1.so.3+0x8bdb2)
#3 dbus_message_cache_or_finalize /home/linux/qt6_dev/dbus/dbus/dbus-message.c:640 (libdbus-1.so.3+0x4d188)
#4 dbus_message_unref /home/linux/qt6_dev/dbus/dbus/dbus-message.c:1729 (libdbus-1.so.3+0x50e0e)
#5 q_dbus_message_unref /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:377 (libQt6DBus.so.6+0xc081d)
#6 QDBusMessagePrivate::~QDBusMessagePrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusmessage.cpp:49 (libQt6DBus.so.6+0xc081d)
#7 QDBusMessage::~QDBusMessage() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusmessage.cpp:541 (libQt6DBus.so.6+0xc07dc)
#8 QDBusConnectionPrivate::getNameOwnerNoCache(QString const&) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:2546 (libQt6DBus.so.6+0x883d0)
#9 QDBusConnectionPrivate::getNameOwner(QString const&) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:2520 (libQt6DBus.so.6+0x8991e)
#10 QDBusAbstractInterfacePrivate::initOwnerTracking() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusabstractinterface.cpp:102 (libQt6DBus.so.6+0x3086c)
#11 QDBusAbstractInterface::QDBusAbstractInterface(QString const&, QString const&, char const*, QDBusConnection const&, QObject*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusabstractinterface.cpp:308 (libQt6DBus.so.6+0x31943)
#12 OrgA11yStatusInterface::OrgA11yStatusInterface(QString const&, QString const&, QDBusConnection const&, QObject*) /home/linux/qt6_dev/qt6-build/src/gui/bus_interface.cpp:32 (libQt6Gui.so.6+0x8a36d7)
#13 DBusConnection::serviceRegistered() /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/linux/dbusconnection.cpp:97 (libQt6Gui.so.6+0x8d3efe)
#14 DBusConnection::DBusConnection(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/linux/dbusconnection.cpp:64 (libQt6Gui.so.6+0x8d578f)
#15 QSpiAccessibleBridge::QSpiAccessibleBridge() /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/linux/qspiaccessiblebridge.cpp:34 (libQt6Gui.so.6+0x8f73a6)
#16 QXcbIntegration::accessibility() const /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:412 (libQt6XcbQpa.so.6+0x99cd5)
#17 platformAccessibility /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/qaccessible.cpp:456 (libQt6Gui.so.6+0x87ca30)
#18 QAccessible::isActive() /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/qaccessible.cpp:780 (libQt6Gui.so.6+0x87f9f5)
#19 QAccessible::updateAccessibility(QAccessibleEvent*) /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/qaccessible.cpp:848 (libQt6Gui.so.6+0x87fd84)
#20 QWidgetPrivate::show_helper() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:7998 (libQt6Widgets.so.6+0x23adaa)
#21 QWidgetPrivate::setVisible(bool) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:8286 (libQt6Widgets.so.6+0x23f9b3)
#22 QWidget::setVisible(bool) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:8218 (libQt6Widgets.so.6+0x23fbf6)
#23 QWidget::show() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:7844 (libQt6Widgets.so.6+0x23a5af)
#24 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:12 (qt_tsan_tests+0x3206)
Location is heap block of size 72 at 0x7b1400002850 allocated by thread T1:
#0 calloc ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:672 (libtsan.so.0+0x31edc)
#1 dbus_malloc0 /home/linux/qt6_dev/dbus/dbus/dbus-memory.c:573 (libdbus-1.so.3+0x9792a)
#2 _dbus_counter_new /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:93 (libdbus-1.so.3+0x687b7)
#3 _dbus_transport_init_base /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:127 (libdbus-1.so.3+0x77d60)
#4 _dbus_transport_new_for_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-socket.c:1321 (libdbus-1.so.3+0x7ee4c)
#5 _dbus_transport_new_for_domain_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:94 (libdbus-1.so.3+0x810af)
#6 _dbus_transport_open_platform_specific /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:259 (libdbus-1.so.3+0x8160c)
#7 _dbus_transport_open /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:396 (libdbus-1.so.3+0x7896a)
#8 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1818 (libdbus-1.so.3+0x2bd62)
#9 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#10 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#11 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#12 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#13 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#14 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#15 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#16 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#17 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#18 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#19 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#20 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#21 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#22 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#23 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#24 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#25 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#26 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#27 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#28 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#29 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#30 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#31 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#32 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#33 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#34 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#35 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#36 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#37 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#38 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#39 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#40 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Mutex M870 (0x7b0c00001e60) created at:
#0 pthread_mutex_init ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:1227 (libtsan.so.0+0x4bee1)
#1 _dbus_platform_rmutex_new /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:120 (libdbus-1.so.3+0xb093e)
#2 _dbus_rmutex_new_at_location /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:63 (libdbus-1.so.3+0x77070)
#3 _dbus_connection_new_for_transport /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1288 (libdbus-1.so.3+0x2a5bc)
#4 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1826 (libdbus-1.so.3+0x2bd8f)
#5 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#6 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#7 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#8 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#9 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#10 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#11 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#12 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#13 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#14 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#15 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#16 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#17 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#18 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#19 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#20 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#21 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#22 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#23 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#24 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#25 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#26 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#27 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#28 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#29 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#30 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#31 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#32 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#33 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#34 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#35 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#36 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Mutex M869 (0x7b0c00001dd0) created at:
#0 pthread_mutex_init ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:1227 (libtsan.so.0+0x4bee1)
#1 _dbus_platform_rmutex_new /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:120 (libdbus-1.so.3+0xb093e)
#2 _dbus_rmutex_new_at_location /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:63 (libdbus-1.so.3+0x77070)
#3 _dbus_counter_new /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:99 (libdbus-1.so.3+0x687ef)
#4 _dbus_transport_init_base /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:127 (libdbus-1.so.3+0x77d60)
#5 _dbus_transport_new_for_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-socket.c:1321 (libdbus-1.so.3+0x7ee4c)
#6 _dbus_transport_new_for_domain_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:94 (libdbus-1.so.3+0x810af)
#7 _dbus_transport_open_platform_specific /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:259 (libdbus-1.so.3+0x8160c)
#8 _dbus_transport_open /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:396 (libdbus-1.so.3+0x7896a)
#9 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1818 (libdbus-1.so.3+0x2bd62)
#10 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#11 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#12 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#13 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#14 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#15 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#16 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#17 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#18 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#19 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#20 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#21 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#22 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#23 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#24 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#25 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#26 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#27 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#28 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#29 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#30 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#31 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#32 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#33 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#34 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#35 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#36 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#37 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#38 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#39 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#40 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#41 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Thread T1 'QDBusConnection' (tid=5892, running) created by main thread at:
#0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
#1 QThread::start(QThread::Priority) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:707 (libQt6Core.so.6+0x491f6b)
#2 QDBusConnectionManager::QDBusConnectionManager() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:96 (libQt6DBus.so.6+0x4c931)
#3 innerFunction /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:40 (libQt6DBus.so.6+0x4f632)
#4 Holder /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:37 (libQt6DBus.so.6+0x4f632)
#5 instance /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:91 (libQt6DBus.so.6+0x4f632)
#6 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:73 (libQt6DBus.so.6+0x4f632)
#7 QDBusConnection::sessionBus() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:1133 (libQt6DBus.so.6+0x4f632)
#8 QGenericUnixServices::QGenericUnixServices() /home/linux/qt6_dev/qt6/qtbase/src/gui/platform/unix/qgenericunixservices.cpp:359 (libQt6Gui.so.6+0xb0a4cd)
#9 QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:99 (libQt6XcbQpa.so.6+0x9d6e9)
#10 QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22 (libqxcb.so+0x2490)
#11 QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/linux/qt6_dev/qt6-build/include/QtCore/6.5.0/QtCore/private/../../../../../../qt6/qtbase/src/corelib/plugin/qfactoryloader_p.h:99 (libQt6Gui.so.6+0x2967d5)
#12 QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23 (libQt6Gui.so.6+0x296513)
#13 init_platform /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1191 (libQt6Gui.so.6+0x220b92)
#14 QGuiApplicationPrivate::createPlatformIntegration() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1471 (libQt6Gui.so.6+0x224585)
#15 QGuiApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1490 (libQt6Gui.so.6+0x224bdf)
#16 QApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:140 (libQt6Widgets.so.6+0x1926ef)
#17 QCoreApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:815 (libQt6Core.so.6+0x1b07fc)
#18 QGuiApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1514 (libQt6Gui.so.6+0x22ad1f)
#19 QApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:466 (libQt6Widgets.so.6+0x194506)
#20 QApplication::QApplication(int&, char**, int) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:454 (libQt6Widgets.so.6+0x194613)
#21 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:8 (qt_tsan_tests+0x31c4)
SUMMARY: ThreadSanitizer: data race /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:276 in _dbus_counter_get_size_value
==================
==================
WARNING: ThreadSanitizer: data race (pid=5889)
Read of size 8 at 0x7b1400002860 by thread T1 (mutexes: write M870):
#0 _dbus_counter_get_unix_fd_value /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:288 (libdbus-1.so.3+0x68ee4)
#1 _dbus_transport_get_dispatch_status /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:1127 (libdbus-1.so.3+0x7a554)
#2 _dbus_transport_queue_messages /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:1172 (libdbus-1.so.3+0x7a855)
#3 _dbus_connection_get_dispatch_status_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4258 (libdbus-1.so.3+0x33053)
#4 dbus_connection_dispatch /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4591 (libdbus-1.so.3+0x33b94)
#5 q_dbus_connection_dispatch /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:176 (libQt6DBus.so.6+0x85c11)
#6 QDBusConnectionPrivate::doDispatch() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1171 (libQt6DBus.so.6+0x85c11)
#7 QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (QDBusConnectionPrivate::*)()>::call(void (QDBusConnectionPrivate::*)(), QDBusConnectionPrivate*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x8f187)
#8 void QtPrivate::FunctionPointer<void (QDBusConnectionPrivate::*)()>::call<QtPrivate::List<>, void>(void (QDBusConnectionPrivate::*)(), QDBusConnectionPrivate*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x8f187)
#9 QtPrivate::QSlotObject<void (QDBusConnectionPrivate::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x8f187)
#10 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#11 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#12 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#13 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#14 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#15 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#16 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#17 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#18 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#19 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#20 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#21 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#22 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#23 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#24 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#25 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#26 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#27 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#28 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#29 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#30 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#31 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Previous write of size 8 at 0x7b1400002860 by main thread (mutexes: write M869):
#0 _dbus_counter_adjust_unix_fd /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:245 (libdbus-1.so.3+0x68d5b)
#1 free_counter /home/linux/qt6_dev/dbus/dbus/dbus-message.c:615 (libdbus-1.so.3+0x4d0e3)
#2 _dbus_list_foreach /home/linux/qt6_dev/dbus/dbus/dbus-list.c:770 (libdbus-1.so.3+0x8bdb2)
#3 dbus_message_cache_or_finalize /home/linux/qt6_dev/dbus/dbus/dbus-message.c:640 (libdbus-1.so.3+0x4d188)
#4 dbus_message_unref /home/linux/qt6_dev/dbus/dbus/dbus-message.c:1729 (libdbus-1.so.3+0x50e0e)
#5 q_dbus_message_unref /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:377 (libQt6DBus.so.6+0xc081d)
#6 QDBusMessagePrivate::~QDBusMessagePrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusmessage.cpp:49 (libQt6DBus.so.6+0xc081d)
#7 QDBusMessage::~QDBusMessage() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusmessage.cpp:541 (libQt6DBus.so.6+0xc07dc)
#8 QDBusConnectionPrivate::getNameOwnerNoCache(QString const&) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:2546 (libQt6DBus.so.6+0x883d0)
#9 QDBusConnectionPrivate::getNameOwner(QString const&) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:2520 (libQt6DBus.so.6+0x8991e)
#10 QDBusAbstractInterfacePrivate::initOwnerTracking() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusabstractinterface.cpp:102 (libQt6DBus.so.6+0x3086c)
#11 QDBusAbstractInterface::QDBusAbstractInterface(QString const&, QString const&, char const*, QDBusConnection const&, QObject*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusabstractinterface.cpp:308 (libQt6DBus.so.6+0x31943)
#12 OrgA11yStatusInterface::OrgA11yStatusInterface(QString const&, QString const&, QDBusConnection const&, QObject*) /home/linux/qt6_dev/qt6-build/src/gui/bus_interface.cpp:32 (libQt6Gui.so.6+0x8a36d7)
#13 DBusConnection::serviceRegistered() /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/linux/dbusconnection.cpp:97 (libQt6Gui.so.6+0x8d3efe)
#14 DBusConnection::DBusConnection(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/linux/dbusconnection.cpp:64 (libQt6Gui.so.6+0x8d578f)
#15 QSpiAccessibleBridge::QSpiAccessibleBridge() /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/linux/qspiaccessiblebridge.cpp:34 (libQt6Gui.so.6+0x8f73a6)
#16 QXcbIntegration::accessibility() const /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:412 (libQt6XcbQpa.so.6+0x99cd5)
#17 platformAccessibility /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/qaccessible.cpp:456 (libQt6Gui.so.6+0x87ca30)
#18 QAccessible::isActive() /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/qaccessible.cpp:780 (libQt6Gui.so.6+0x87f9f5)
#19 QAccessible::updateAccessibility(QAccessibleEvent*) /home/linux/qt6_dev/qt6/qtbase/src/gui/accessible/qaccessible.cpp:848 (libQt6Gui.so.6+0x87fd84)
#20 QWidgetPrivate::show_helper() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:7998 (libQt6Widgets.so.6+0x23adaa)
#21 QWidgetPrivate::setVisible(bool) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:8286 (libQt6Widgets.so.6+0x23f9b3)
#22 QWidget::setVisible(bool) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:8218 (libQt6Widgets.so.6+0x23fbf6)
#23 QWidget::show() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qwidget.cpp:7844 (libQt6Widgets.so.6+0x23a5af)
#24 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:12 (qt_tsan_tests+0x3206)
Location is heap block of size 72 at 0x7b1400002850 allocated by thread T1:
#0 calloc ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:672 (libtsan.so.0+0x31edc)
#1 dbus_malloc0 /home/linux/qt6_dev/dbus/dbus/dbus-memory.c:573 (libdbus-1.so.3+0x9792a)
#2 _dbus_counter_new /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:93 (libdbus-1.so.3+0x687b7)
#3 _dbus_transport_init_base /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:127 (libdbus-1.so.3+0x77d60)
#4 _dbus_transport_new_for_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-socket.c:1321 (libdbus-1.so.3+0x7ee4c)
#5 _dbus_transport_new_for_domain_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:94 (libdbus-1.so.3+0x810af)
#6 _dbus_transport_open_platform_specific /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:259 (libdbus-1.so.3+0x8160c)
#7 _dbus_transport_open /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:396 (libdbus-1.so.3+0x7896a)
#8 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1818 (libdbus-1.so.3+0x2bd62)
#9 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#10 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#11 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#12 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#13 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#14 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#15 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#16 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#17 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#18 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#19 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#20 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#21 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#22 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#23 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#24 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#25 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#26 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#27 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#28 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#29 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#30 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#31 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#32 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#33 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#34 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#35 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#36 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#37 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#38 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#39 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#40 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Mutex M870 (0x7b0c00001e60) created at:
#0 pthread_mutex_init ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:1227 (libtsan.so.0+0x4bee1)
#1 _dbus_platform_rmutex_new /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:120 (libdbus-1.so.3+0xb093e)
#2 _dbus_rmutex_new_at_location /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:63 (libdbus-1.so.3+0x77070)
#3 _dbus_connection_new_for_transport /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1288 (libdbus-1.so.3+0x2a5bc)
#4 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1826 (libdbus-1.so.3+0x2bd8f)
#5 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#6 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#7 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#8 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#9 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#10 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#11 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#12 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#13 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#14 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#15 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#16 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#17 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#18 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#19 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#20 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#21 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#22 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#23 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#24 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#25 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#26 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#27 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#28 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#29 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#30 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#31 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#32 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#33 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#34 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#35 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#36 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Mutex M869 (0x7b0c00001dd0) created at:
#0 pthread_mutex_init ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:1227 (libtsan.so.0+0x4bee1)
#1 _dbus_platform_rmutex_new /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:120 (libdbus-1.so.3+0xb093e)
#2 _dbus_rmutex_new_at_location /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:63 (libdbus-1.so.3+0x77070)
#3 _dbus_counter_new /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:99 (libdbus-1.so.3+0x687ef)
#4 _dbus_transport_init_base /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:127 (libdbus-1.so.3+0x77d60)
#5 _dbus_transport_new_for_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-socket.c:1321 (libdbus-1.so.3+0x7ee4c)
#6 _dbus_transport_new_for_domain_socket /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:94 (libdbus-1.so.3+0x810af)
#7 _dbus_transport_open_platform_specific /home/linux/qt6_dev/dbus/dbus/dbus-transport-unix.c:259 (libdbus-1.so.3+0x8160c)
#8 _dbus_transport_open /home/linux/qt6_dev/dbus/dbus/dbus-transport.c:396 (libdbus-1.so.3+0x7896a)
#9 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1818 (libdbus-1.so.3+0x2bd62)
#10 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#11 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#12 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#13 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#14 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#15 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#16 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#17 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#18 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#19 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#20 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#21 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#22 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#23 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#24 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#25 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#26 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#27 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#28 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#29 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#30 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#31 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#32 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#33 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#34 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#35 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#36 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#37 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#38 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#39 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#40 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#41 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Thread T1 'QDBusConnection' (tid=5892, running) created by main thread at:
#0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
#1 QThread::start(QThread::Priority) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:707 (libQt6Core.so.6+0x491f6b)
#2 QDBusConnectionManager::QDBusConnectionManager() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:96 (libQt6DBus.so.6+0x4c931)
#3 innerFunction /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:40 (libQt6DBus.so.6+0x4f632)
#4 Holder /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:37 (libQt6DBus.so.6+0x4f632)
#5 instance /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:91 (libQt6DBus.so.6+0x4f632)
#6 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:73 (libQt6DBus.so.6+0x4f632)
#7 QDBusConnection::sessionBus() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:1133 (libQt6DBus.so.6+0x4f632)
#8 QGenericUnixServices::QGenericUnixServices() /home/linux/qt6_dev/qt6/qtbase/src/gui/platform/unix/qgenericunixservices.cpp:359 (libQt6Gui.so.6+0xb0a4cd)
#9 QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:99 (libQt6XcbQpa.so.6+0x9d6e9)
#10 QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22 (libqxcb.so+0x2490)
#11 QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/linux/qt6_dev/qt6-build/include/QtCore/6.5.0/QtCore/private/../../../../../../qt6/qtbase/src/corelib/plugin/qfactoryloader_p.h:99 (libQt6Gui.so.6+0x2967d5)
#12 QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23 (libQt6Gui.so.6+0x296513)
#13 init_platform /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1191 (libQt6Gui.so.6+0x220b92)
#14 QGuiApplicationPrivate::createPlatformIntegration() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1471 (libQt6Gui.so.6+0x224585)
#15 QGuiApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1490 (libQt6Gui.so.6+0x224bdf)
#16 QApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:140 (libQt6Widgets.so.6+0x1926ef)
#17 QCoreApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:815 (libQt6Core.so.6+0x1b07fc)
#18 QGuiApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1514 (libQt6Gui.so.6+0x22ad1f)
#19 QApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:466 (libQt6Widgets.so.6+0x194506)
#20 QApplication::QApplication(int&, char**, int) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:454 (libQt6Widgets.so.6+0x194613)
#21 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:8 (qt_tsan_tests+0x31c4)
SUMMARY: ThreadSanitizer: data race /home/linux/qt6_dev/dbus/dbus/dbus-resources.c:288 in _dbus_counter_get_unix_fd_value
==================
==================
WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=5889)
Cycle in lock order graph: M739 (0x7b0c00001920) => M870 (0x7b0c00001e60) => M739
Mutex M870 acquired here while holding mutex M739 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:127 (libdbus-1.so.3+0x77211)
#3 _dbus_connection_new_for_transport /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1360 (libdbus-1.so.3+0x2a9fb)
#4 connection_try_from_address_entry /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1826 (libdbus-1.so.3+0x2bd8f)
#5 _dbus_connection_open_internal /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:1887 (libdbus-1.so.3+0x2c08c)
#6 dbus_connection_open_private /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2670 (libdbus-1.so.3+0x2e054)
#7 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:474 (libdbus-1.so.3+0x25fcc)
#8 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#9 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#10 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#11 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#12 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#13 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#14 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#15 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#16 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#17 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#18 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#19 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#20 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#21 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#22 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#23 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#24 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#25 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#26 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#27 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#28 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#29 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#30 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#31 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#32 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#33 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#34 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#35 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#36 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message
Mutex M739 acquired here while holding mutex M870 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:346 (libdbus-1.so.3+0x7790c)
#3 _dbus_bus_notify_shared_connection_disconnected_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:391 (libdbus-1.so.3+0x25c1a)
#4 notify_disconnected_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4203 (libdbus-1.so.3+0x32dcb)
#5 _dbus_connection_get_dispatch_status_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4279 (libdbus-1.so.3+0x33123)
#6 _dbus_connection_close_possibly_shared_and_unlock /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2881 (libdbus-1.so.3+0x2e9fb)
#7 dbus_connection_close /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2950 (libdbus-1.so.3+0x2ec47)
#8 q_dbus_connection_close /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:174 (libQt6DBus.so.6+0x8b838)
#9 QDBusConnectionPrivate::closeConnection() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1098 (libQt6DBus.so.6+0x8b838)
#10 QDBusConnectionPrivate::~QDBusConnectionPrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1047 (libQt6DBus.so.6+0x8cb43)
#11 QDBusConnectionPrivate::~QDBusConnectionPrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1067 (libQt6DBus.so.6+0x8d679)
#12 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:131 (libQt6DBus.so.6+0x4bf79)
#13 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#14 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#15 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Thread T1 'QDBusConnection' (tid=5892, running) created by main thread at:
#0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
#1 QThread::start(QThread::Priority) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:707 (libQt6Core.so.6+0x491f6b)
#2 QDBusConnectionManager::QDBusConnectionManager() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:96 (libQt6DBus.so.6+0x4c931)
#3 innerFunction /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:40 (libQt6DBus.so.6+0x4f632)
#4 Holder /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:37 (libQt6DBus.so.6+0x4f632)
#5 instance /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:91 (libQt6DBus.so.6+0x4f632)
#6 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:73 (libQt6DBus.so.6+0x4f632)
#7 QDBusConnection::sessionBus() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:1133 (libQt6DBus.so.6+0x4f632)
#8 QGenericUnixServices::QGenericUnixServices() /home/linux/qt6_dev/qt6/qtbase/src/gui/platform/unix/qgenericunixservices.cpp:359 (libQt6Gui.so.6+0xb0a4cd)
#9 QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:99 (libQt6XcbQpa.so.6+0x9d6e9)
#10 QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22 (libqxcb.so+0x2490)
#11 QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/linux/qt6_dev/qt6-build/include/QtCore/6.5.0/QtCore/private/../../../../../../qt6/qtbase/src/corelib/plugin/qfactoryloader_p.h:99 (libQt6Gui.so.6+0x2967d5)
#12 QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23 (libQt6Gui.so.6+0x296513)
#13 init_platform /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1191 (libQt6Gui.so.6+0x220b92)
#14 QGuiApplicationPrivate::createPlatformIntegration() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1471 (libQt6Gui.so.6+0x224585)
#15 QGuiApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1490 (libQt6Gui.so.6+0x224bdf)
#16 QApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:140 (libQt6Widgets.so.6+0x1926ef)
#17 QCoreApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:815 (libQt6Core.so.6+0x1b07fc)
#18 QGuiApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1514 (libQt6Gui.so.6+0x22ad1f)
#19 QApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:466 (libQt6Widgets.so.6+0x194506)
#20 QApplication::QApplication(int&, char**, int) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:454 (libQt6Widgets.so.6+0x194613)
#21 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:8 (qt_tsan_tests+0x31c4)
SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 in _dbus_platform_rmutex_lock
==================
==================
WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=5889)
Cycle in lock order graph: M739 (0x7b0c00001920) => M740 (0x7b0c00001950) => M471605877460184128 (0x000000000000) => M739
Mutex M740 acquired here while holding mutex M739 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:346 (libdbus-1.so.3+0x7790c)
#3 dbus_bus_register /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:661 (libdbus-1.so.3+0x262fb)
#4 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:483 (libdbus-1.so.3+0x26007)
#5 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#6 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#7 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#8 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#9 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#10 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#11 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#12 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#13 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#14 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#15 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#16 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#17 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#18 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#19 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#20 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#21 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#22 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#23 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#24 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#25 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#26 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#27 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#28 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#29 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#30 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#31 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#32 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#33 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message
Mutex M471605877460184128 acquired here while holding mutex M740 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:127 (libdbus-1.so.3+0x77211)
#3 dbus_connection_send_with_reply_and_block /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:3551 (libdbus-1.so.3+0x307d1)
#4 dbus_bus_register /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:695 (libdbus-1.so.3+0x2647c)
#5 q_dbus_bus_register /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:159 (libQt6DBus.so.6+0x52c8b)
#6 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:220 (libQt6DBus.so.6+0x52c8b)
#7 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#8 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#9 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#10 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#11 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#12 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#13 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#14 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#15 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#16 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#17 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#18 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#19 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#20 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#21 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#22 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#23 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#24 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#25 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#26 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#27 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#28 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#29 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#30 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#31 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#32 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Mutex M739 acquired here while holding mutex M471605877460184128 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:346 (libdbus-1.so.3+0x7790c)
#3 _dbus_bus_notify_shared_connection_disconnected_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:391 (libdbus-1.so.3+0x25c1a)
#4 notify_disconnected_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4203 (libdbus-1.so.3+0x32dcb)
#5 _dbus_connection_get_dispatch_status_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4279 (libdbus-1.so.3+0x33123)
#6 _dbus_connection_close_possibly_shared_and_unlock /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2881 (libdbus-1.so.3+0x2e9fb)
#7 dbus_connection_close /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2950 (libdbus-1.so.3+0x2ec47)
#8 q_dbus_connection_close /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:174 (libQt6DBus.so.6+0x8b838)
#9 QDBusConnectionPrivate::closeConnection() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1098 (libQt6DBus.so.6+0x8b838)
#10 QDBusConnectionPrivate::~QDBusConnectionPrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1047 (libQt6DBus.so.6+0x8cb43)
#11 QDBusConnectionPrivate::~QDBusConnectionPrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1067 (libQt6DBus.so.6+0x8d679)
#12 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:131 (libQt6DBus.so.6+0x4bf79)
#13 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#14 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#15 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Thread T1 'QDBusConnection' (tid=5892, running) created by main thread at:
#0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
#1 QThread::start(QThread::Priority) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:707 (libQt6Core.so.6+0x491f6b)
#2 QDBusConnectionManager::QDBusConnectionManager() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:96 (libQt6DBus.so.6+0x4c931)
#3 innerFunction /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:40 (libQt6DBus.so.6+0x4f632)
#4 Holder /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:37 (libQt6DBus.so.6+0x4f632)
#5 instance /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:91 (libQt6DBus.so.6+0x4f632)
#6 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:73 (libQt6DBus.so.6+0x4f632)
#7 QDBusConnection::sessionBus() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:1133 (libQt6DBus.so.6+0x4f632)
#8 QGenericUnixServices::QGenericUnixServices() /home/linux/qt6_dev/qt6/qtbase/src/gui/platform/unix/qgenericunixservices.cpp:359 (libQt6Gui.so.6+0xb0a4cd)
#9 QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:99 (libQt6XcbQpa.so.6+0x9d6e9)
#10 QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22 (libqxcb.so+0x2490)
#11 QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/linux/qt6_dev/qt6-build/include/QtCore/6.5.0/QtCore/private/../../../../../../qt6/qtbase/src/corelib/plugin/qfactoryloader_p.h:99 (libQt6Gui.so.6+0x2967d5)
#12 QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23 (libQt6Gui.so.6+0x296513)
#13 init_platform /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1191 (libQt6Gui.so.6+0x220b92)
#14 QGuiApplicationPrivate::createPlatformIntegration() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1471 (libQt6Gui.so.6+0x224585)
#15 QGuiApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1490 (libQt6Gui.so.6+0x224bdf)
#16 QApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:140 (libQt6Widgets.so.6+0x1926ef)
#17 QCoreApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:815 (libQt6Core.so.6+0x1b07fc)
#18 QGuiApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1514 (libQt6Gui.so.6+0x22ad1f)
#19 QApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:466 (libQt6Widgets.so.6+0x194506)
#20 QApplication::QApplication(int&, char**, int) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:454 (libQt6Widgets.so.6+0x194613)
#21 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:8 (qt_tsan_tests+0x31c4)
SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 in _dbus_platform_rmutex_lock
==================
==================
WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=5889)
Cycle in lock order graph: M739 (0x7b0c00001920) => M740 (0x7b0c00001950) => M173805352100308448 (0x000000000000) => M739
Mutex M740 acquired here while holding mutex M739 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:346 (libdbus-1.so.3+0x7790c)
#3 dbus_bus_register /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:661 (libdbus-1.so.3+0x262fb)
#4 internal_bus_get /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:483 (libdbus-1.so.3+0x26007)
#5 dbus_bus_get_private /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:593 (libdbus-1.so.3+0x261b7)
#6 q_dbus_bus_get_private /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:162 (libQt6DBus.so.6+0x52b9d)
#7 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:207 (libQt6DBus.so.6+0x52b9d)
#8 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#9 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#10 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#11 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#12 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#13 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#14 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#15 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#16 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#17 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#18 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#19 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#20 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#21 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#22 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#23 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#24 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#25 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#26 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#27 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#28 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#29 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#30 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#31 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#32 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#33 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message
Mutex M173805352100308448 acquired here while holding mutex M740 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:127 (libdbus-1.so.3+0x77211)
#3 dbus_connection_send_with_reply_and_block /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:3551 (libdbus-1.so.3+0x307d1)
#4 dbus_bus_register /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:695 (libdbus-1.so.3+0x2647c)
#5 q_dbus_bus_register /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:159 (libQt6DBus.so.6+0x52c8b)
#6 QDBusConnectionManager::executeConnectionRequest(QDBusConnectionManager::ConnectionRequestData*) /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:220 (libQt6DBus.so.6+0x52c8b)
#7 QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void, void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:135 (libQt6DBus.so.6+0x554fe)
#8 void QtPrivate::FunctionPointer<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*)>::call<QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>(void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QDBusConnectionManager*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:172 (libQt6DBus.so.6+0x554fe)
#9 QtPrivate::QSlotObject<void (QDBusConnectionManager::*)(QDBusConnectionManager::ConnectionRequestData*), QtPrivate::List<QDBusConnectionManager::ConnectionRequestData*>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:383 (libQt6DBus.so.6+0x554fe)
#10 QtPrivate::QSlotObjectBase::call(QObject*, void**) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobjectdefs_impl.h:363 (libQt6Core.so.6+0x23d247)
#11 QMetaCallEvent::placeMetaCall(QObject*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:608 (libQt6Core.so.6+0x23d247)
#12 QObject::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qobject.cpp:1378 (libQt6Core.so.6+0x24562a)
#13 QThread::event(QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:1105 (libQt6Core.so.6+0x3bf12c)
#14 QCoreApplicationPrivate::notify_helper(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1197 (libQt6Core.so.6+0x1a341e)
#15 doNotify /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1126 (libQt6Core.so.6+0x1a6843)
#16 QCoreApplication::notifyInternal2(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1029 (libQt6Core.so.6+0x1a6a71)
#17 QCoreApplication::sendEvent(QObject*, QEvent*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1448 (libQt6Core.so.6+0x1a6b93)
#18 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1810 (libQt6Core.so.6+0x1abdc4)
#19 QCoreApplication::sendPostedEvents(QObject*, int) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:1669 (libQt6Core.so.6+0x1abff7)
#20 postEventSourceDispatch /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:243 (libQt6Core.so.6+0x685bbe)
#21 g_main_dispatch ../glib/glib/gmain.c:3417 (libglib-2.0.so.0+0x8523f)
#22 g_main_context_dispatch ../glib/glib/gmain.c:4135 (libglib-2.0.so.0+0x8706a)
#23 g_main_context_iterate ../glib/glib/gmain.c:4211 (libglib-2.0.so.0+0x87354)
#24 g_main_context_iteration ../glib/glib/gmain.c:4276 (libglib-2.0.so.0+0x87464)
#25 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:393 (libQt6Core.so.6+0x684d34)
#26 QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:100 (libQt6Core.so.6+0x1bd103)
#27 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qeventloop.cpp:182 (libQt6Core.so.6+0x1bdff6)
#28 QThread::exec() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread.cpp:578 (libQt6Core.so.6+0x3beebb)
#29 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:123 (libQt6DBus.so.6+0x4bd52)
#30 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#31 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#32 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Mutex M739 acquired here while holding mutex M173805352100308448 in thread T1:
#0 pthread_mutex_lock ../../../../src/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:4240 (libtsan.so.0+0x53908)
#1 _dbus_platform_rmutex_lock /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 (libdbus-1.so.3+0xb0b71)
#2 _dbus_lock /home/linux/qt6_dev/dbus/dbus/dbus-threads.c:346 (libdbus-1.so.3+0x7790c)
#3 _dbus_bus_notify_shared_connection_disconnected_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-bus.c:391 (libdbus-1.so.3+0x25c1a)
#4 notify_disconnected_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4203 (libdbus-1.so.3+0x32dcb)
#5 _dbus_connection_get_dispatch_status_unlocked /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:4279 (libdbus-1.so.3+0x33123)
#6 _dbus_connection_close_possibly_shared_and_unlock /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2881 (libdbus-1.so.3+0x2e9fb)
#7 dbus_connection_close /home/linux/qt6_dev/dbus/dbus/dbus-connection.c:2950 (libdbus-1.so.3+0x2ec47)
#8 q_dbus_connection_close /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbus_symbols_p.h:174 (libQt6DBus.so.6+0x8b838)
#9 QDBusConnectionPrivate::closeConnection() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1098 (libQt6DBus.so.6+0x8b838)
#10 QDBusConnectionPrivate::~QDBusConnectionPrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1047 (libQt6DBus.so.6+0x8cb43)
#11 QDBusConnectionPrivate::~QDBusConnectionPrivate() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusintegrator.cpp:1067 (libQt6DBus.so.6+0x8d679)
#12 QDBusConnectionManager::run() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:131 (libQt6DBus.so.6+0x4bf79)
#13 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:321 (libQt6Core.so.6+0x4930fc)
#14 terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> > /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:257 (libQt6Core.so.6+0x493190)
#15 QThreadPrivate::start(void*) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:280 (libQt6Core.so.6+0x4939f6)
Thread T1 'QDBusConnection' (tid=5892, running) created by main thread at:
#0 pthread_create ../../../../src/libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x605b8)
#1 QThread::start(QThread::Priority) /home/linux/qt6_dev/qt6/qtbase/src/corelib/thread/qthread_unix.cpp:707 (libQt6Core.so.6+0x491f6b)
#2 QDBusConnectionManager::QDBusConnectionManager() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:96 (libQt6DBus.so.6+0x4c931)
#3 innerFunction /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:40 (libQt6DBus.so.6+0x4f632)
#4 Holder /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:37 (libQt6DBus.so.6+0x4f632)
#5 instance /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:91 (libQt6DBus.so.6+0x4f632)
#6 operator() /home/linux/qt6_dev/qt6/qtbase/src/corelib/global/qglobalstatic.h:73 (libQt6DBus.so.6+0x4f632)
#7 QDBusConnection::sessionBus() /home/linux/qt6_dev/qt6/qtbase/src/dbus/qdbusconnection.cpp:1133 (libQt6DBus.so.6+0x4f632)
#8 QGenericUnixServices::QGenericUnixServices() /home/linux/qt6_dev/qt6/qtbase/src/gui/platform/unix/qgenericunixservices.cpp:359 (libQt6Gui.so.6+0xb0a4cd)
#9 QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:99 (libQt6XcbQpa.so.6+0x9d6e9)
#10 QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/linux/qt6_dev/qt6/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22 (libqxcb.so+0x2490)
#11 QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/linux/qt6_dev/qt6-build/include/QtCore/6.5.0/QtCore/private/../../../../../../qt6/qtbase/src/corelib/plugin/qfactoryloader_p.h:99 (libQt6Gui.so.6+0x2967d5)
#12 QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23 (libQt6Gui.so.6+0x296513)
#13 init_platform /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1191 (libQt6Gui.so.6+0x220b92)
#14 QGuiApplicationPrivate::createPlatformIntegration() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1471 (libQt6Gui.so.6+0x224585)
#15 QGuiApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1490 (libQt6Gui.so.6+0x224bdf)
#16 QApplicationPrivate::createEventDispatcher() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:140 (libQt6Widgets.so.6+0x1926ef)
#17 QCoreApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/corelib/kernel/qcoreapplication.cpp:815 (libQt6Core.so.6+0x1b07fc)
#18 QGuiApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/gui/kernel/qguiapplication.cpp:1514 (libQt6Gui.so.6+0x22ad1f)
#19 QApplicationPrivate::init() /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:466 (libQt6Widgets.so.6+0x194506)
#20 QApplication::QApplication(int&, char**, int) /home/linux/qt6_dev/qt6/qtbase/src/widgets/kernel/qapplication.cpp:454 (libQt6Widgets.so.6+0x194613)
#21 main /home/linux/qt6_dev/qt_tsan_tests_dev/qt_tsan_tests/main.cpp:8 (qt_tsan_tests+0x31c4)
SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) /home/linux/qt6_dev/dbus/dbus/dbus-sysdeps-pthread.c:159 in _dbus_platform_rmutex_lock
==================
ThreadSanitizer: reported 6 warnings
More information about the Development
mailing list