https://bugs.kde.org/show_bug.cgi?id=417906

            Bug ID: 417906
           Summary: Please add support for Linux 5.2 CLONE_PIDFD flag to
                    clone()
           Product: valgrind
           Version: 3.15 SVN
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: jsew...@acm.org
          Reporter: thi...@kde.org
  Target Milestone: ---

SUMMARY
Linux 5.2 added CLONE_PIDFD flag to the clone() system call, which returns a
file descriptor representing the child process. Qt 5.15 will use this flag to
have a better representation of child processes, without the need to use a
SIGCHLD handler. This is also, finally, thread-safe.

Running Valgrind on an application using Qt 5.15's QProcess class produces:

==180074== Unsupported clone() flags: 0x5000
==180074== 
==180074== The only supported clone() uses are:
==180074==  - via a threads library (LinuxThreads or NPTL)
==180074==  - via the implementation of fork or vfork
==180074== 
==180074== Valgrind detected that your program requires
==180074== the following unimplemented functionality:
==180074==    Valgrind does not support general clone().
==180074== This may be because the functionality is hard to implement,
==180074== or because no reasonable program would behave this way,
==180074== or because nobody has yet needed it.  In any case, let us know at
==180074== www.valgrind.org and/or try to work around the problem, if you can.
==180074== 
==180074== Valgrind has to exit now.  Sorry.  Bye!

CLONE_PIDFD is 0x1000. CLONE_VFORK is 0x4000.

Without CLONE_VFORK, execution seems to continue but produce nonsensical
results.

OBSERVED RESULT
Valgrind either terminates or produce nonsensical reports when CLONE_PIDFD is
used.

EXPECTED RESULT
CLONE_PIDFD is understood properly

SOFTWARE/OS VERSIONS
Linux 5.5.2

ADDITIONAL INFORMATION
Please also implement the P_PIDFD argument to waitid(), available since Linux
5.4. Linux 5.3 added clone3 system call, but we're not using it yet.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to