https://bugs.kde.org/show_bug.cgi?id=423963
--- Comment #28 from Tom Hughes <t...@compton.nu> --- I think I know what's happening - the POST handler for clone is actually running in both threads. It works in the parent thread but when it tries to read the PIDFD in the child thread it gets a nonsense value. Possibly Qt 6.1 changed something that affects the value of that memory going in but my reading of the manual page says that the value is only guaranteed to be available in the parent's memory on return so it may just be chance that this appeared work before. Try building valgrind with this patch and see if it helps: diff --git a/coregrind/m_syswrap/syswrap-linux.c b/coregrind/m_syswrap/syswrap-linux.c index 5ae4e6613..c59d8ee26 100644 --- a/coregrind/m_syswrap/syswrap-linux.c +++ b/coregrind/m_syswrap/syswrap-linux.c @@ -940,7 +940,7 @@ PRE(sys_clone) ("Valgrind does not support general clone()."); } - if (SUCCESS) { + if (SUCCESS && RES != 0) { if (ARG_FLAGS & (VKI_CLONE_PARENT_SETTID | VKI_CLONE_PIDFD)) POST_MEM_WRITE(ARG3, sizeof(Int)); if (ARG_FLAGS & (VKI_CLONE_CHILD_SETTID | VKI_CLONE_CHILD_CLEARTID)) -- You are receiving this mail because: You are watching all bug changes.