trace2: add trace2_child_ready() to report on background children
commit64bc75244b5bdc26112cf7b8533a832b692a5fda
authorJeff Hostetler <jeffhost@microsoft.com>
Mon, 20 Sep 2021 15:36:12 +0000 (20 15:36 +0000)
committerJunio C Hamano <gitster@pobox.com>
Mon, 20 Sep 2021 15:57:58 +0000 (20 08:57 -0700)
treea437715e40883730a1d6eede3123eb39e7d99d73
parent4c719308ce59dc70e606f910f40801f2c6051b24
trace2: add trace2_child_ready() to report on background children

Create "child_ready" event to capture the state of a child process
created in the background.

When a child command is started a "child_start" event is generated in
the Trace2 log.  For normal synchronous children, a "child_exit" event
is later generated when the child exits or is terminated.  The two events
include information, such as the "child_id" and "pid", to allow post
analysis to match-up the command line and exit status.

When a child is started in the background (and may outlive the parent
process), it is not possible for the parent to emit a "child_exit"
event.  Create a new "child_ready" event to indicate whether the
child was successfully started.  Also include the "child_id" and "pid"
to allow similar post processing.

This will be used in a later commit with the new "start_bg_command()".

Signed-off-by: Jeff Hostetler <jeffhost@microsoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/technical/api-trace2.txt
trace2.c
trace2.h
trace2/tr2_tgt.h
trace2/tr2_tgt_event.c
trace2/tr2_tgt_normal.c
trace2/tr2_tgt_perf.c