On Mon, 22.12.14 11:57, Filipe Brandenburger ([email protected]) wrote:
> Ping? I got none of these emails, and they are neither shown in the mailing list archives. There must be something wrong in the mail delivery between google.com and fdo? > On Thu, Dec 18, 2014 at 11:24 AM, Filipe Brandenburger > <[email protected]> wrote: > > In test_raw_clone, make sure the cloned thread calls _exit() and in the > > parent > > thread call waitpid(..., __WCLONE) to wait for the child thread to > > terminate, > > otherwise there is a race condition where the child thread will log to the > > console after the test process has already exited and the assertion from the > > child thread might not be enforced. > > > > The absence of this patch might also create problems for other tests that > > would > > be added after this one, since potentially both parent and child would run > > those tests as the child would continue running. > > > > Tested by confirming that the logs from the child are printed before the > > test > > terminates and that a false assertion in the child aborts the test with a > > core > > dump. > > --- > > src/test/test-util.c | 9 +++++++-- > > 1 file changed, 7 insertions(+), 2 deletions(-) > > > > diff --git a/src/test/test-util.c b/src/test/test-util.c > > index ec04744..997e3df 100644 > > --- a/src/test/test-util.c > > +++ b/src/test/test-util.c > > @@ -1325,10 +1325,15 @@ static void test_raw_clone(void) { > > pid2 = raw_getpid(); > > log_info("raw_clone: "PID_FMT" getpid()→"PID_FMT" > > raw_getpid()→"PID_FMT, > > pid, getpid(), pid2); > > - if (pid == 0) > > + if (pid == 0) { > > assert_se(pid2 != parent); > > - else > > + _exit(EXIT_SUCCESS); > > + } else { > > + int status; > > assert_se(pid2 == parent); > > + > > + waitpid(pid, &status, __WCLONE); > > + } > > } > > > > int main(int argc, char *argv[]) { > > -- > > 1.8.3.1 > > > _______________________________________________ > systemd-devel mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/systemd-devel Lennart -- Lennart Poettering, Red Hat _______________________________________________ systemd-devel mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/systemd-devel
