Important: Please read the Qt Code of Conduct -

Qt and Helgrind

  • Thanks for taking the time to look at my post. I'm looking to see if anyone has had any luck debugging their Qt applications with valgrind --tool=helgrind with useful information ( and not 10,000 lines of false positives). I've looked at this post here: and it claims that with a version of Valgrind>=3.9 I shouldn't see so many issues with QMutex. I realize that QMutex was not implemented under the hood with p_thread_mutex and that's the reason why Helgrind doesn't realize it's locking and unlocking. In fact, Helgrind flags the unlocking and locking of a QMutex as a potential data race condition and further, due to tryLock(), it flags a mismatched lock ordered. There are also issues with the event loop that Helgrind also tracks. Apparently it was implemented with the default glib event batcher. While I know these are all false positives, I was wondering if anyone has generated a suppression list or has a link to one. I'm currently using Valgrind version 3.13.0, Qt 5.9.4, GCC 7.3 (devtoolkit7) and RHEL 7.3. Any help would be much appreciated.

Log in to reply