Message ID | 019e01d50fc2$324bd400$96e37c00$@nexbridge.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [Breakage] 2.22.0-rc1 - t0211-trace2-perf.sh | expand |
On Tue, May 21 2019, Randall S. Becker wrote: > Hi All, > > On the NonStop platform, the entire test for t0211-trace2-perf.sh does not > work. The first case, in verbose, reports: > > We get errors when the script is run: > > Use of uninitialized value within @tokens in pattern match (m//) at > t0211/scrub_perf.perl line 29, <> line 1. Could you intrument that test top "cat" the raw trace.perf you get? That's some bug in the perl side of the parsing. But the real bug looks like the trace2 code unconditionally depending on pthreads, even though NonStop has 'NO_PTHREADS = UnfortunatelyYes' defined. That's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code using pthreads is failing with whatever pthread-bizarro NonStop has. That seems easy enough to "fix", just always fake up "main" if we don't have pthreads, but perhaps Jeff H. has another opinion on it... > Initialized empty Git repository in /home/git/git/t/trash > directory.t0211-trace2-perf/.git/ > expecting success: > test_when_finished "rm trace.perf actual expect" && > GIT_TR2_PERF="$(pwd)/trace.perf" test-tool trace2 001return 0 && > perl "$TEST_DIRECTORY/t0211/scrub_perf.perl" <trace.perf >actual && > cat >expect <<-EOF && > d0|main|version|||||$V > d0|main|start||_T_ABS_|||_EXE_ trace2 001return 0 > d0|main|cmd_name|||||trace2 (trace2) > d0|main|exit||_T_ABS_|||code:0 > d0|main|atexit||_T_ABS_|||code:0 > EOF > test_cmp expect actual > > --- expect 2019-05-21 10:38:47 +0000 > +++ actual 2019-05-21 10:38:47 +0000 > @@ -1,5 +1,5 @@ > -d0|main|version|||||2.22.0.rc1 > -d0|main|start||_T_ABS_|||_EXE_ trace2 001return 0 > -d0|main|cmd_name|||||trace2 (trace2) > -d0|main|exit||_T_ABS_|||code:0 > -d0|main|atexit||_T_ABS_|||code:0 > +d0|th01:unknown|version|||||2.22.0.rc1 > +d0|th02:unknown|start||_T_ABS_|||_EXE_ trace2 001return 0 > +d0|th03:unknown|cmd_name|||||trace2 (trace2) > +d0|th04:unknown|exit||_T_ABS_|||code:0 > +d0|th06:unknown|atexit||_T_ABS_|||code:0 > > Our perl is v5.24.0 and this cannot be upgraded. > > Thoughts? > > Randall > > -- Brief whoami: > NonStop developer since approximately 211288444200000000 > UNIX developer since approximately 421664400 > -- In my real life, I talk too much.
On Tue, May 21, 2019 at 6:51 PM Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote: > But the real bug looks like the trace2 code unconditionally depending on > pthreads, even though NonStop has 'NO_PTHREADS = UnfortunatelyYes' > defined. > > That's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code > using pthreads is failing with whatever pthread-bizarro NonStop has. > > That seems easy enough to "fix", just always fake up "main" if we don't > have pthreads, but perhaps Jeff H. has another opinion on it... That's not NonStop. thread-utils.h (re)defines pthread_getspecific() to return NULL when NO_PTHREADS, which triggers this I think.
On May 21, 2019 07:59, Duy Nguyen wrote: > On Tue, May 21, 2019 at 6:51 PM Ævar Arnfjörð Bjarmason > <avarab@gmail.com> wrote: > > But the real bug looks like the trace2 code unconditionally depending > > on pthreads, even though NonStop has 'NO_PTHREADS = > UnfortunatelyYes' > > defined. > > > > That's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code > > using pthreads is failing with whatever pthread-bizarro NonStop has. > > > > That seems easy enough to "fix", just always fake up "main" if we > > don't have pthreads, but perhaps Jeff H. has another opinion on it... > > That's not NonStop. thread-utils.h (re)defines pthread_getspecific() to return > NULL when NO_PTHREADS, which triggers this I think. The platform *is* NonStop, which has SPT and PUT pthreads, but we have never been able to make them work with git, so did not include them in the configuration.
On 5/21/2019 9:07 AM, Randall S. Becker wrote: > On May 21, 2019 07:59, Duy Nguyen wrote: >> On Tue, May 21, 2019 at 6:51 PM Ævar Arnfjörð Bjarmason >> <avarab@gmail.com> wrote: >>> But the real bug looks like the trace2 code unconditionally depending >>> on pthreads, even though NonStop has 'NO_PTHREADS = >> UnfortunatelyYes' >>> defined. >>> >>> That's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code >>> using pthreads is failing with whatever pthread-bizarro NonStop has. >>> >>> That seems easy enough to "fix", just always fake up "main" if we >>> don't have pthreads, but perhaps Jeff H. has another opinion on it... >> >> That's not NonStop. thread-utils.h (re)defines pthread_getspecific() to return >> NULL when NO_PTHREADS, which triggers this I think. > > The platform *is* NonStop, which has SPT and PUT pthreads, but we have never been able to make them work with git, so did not include them in the configuration. > I just reproduced this on my Mac with NO_PTHREADS defined. I'll post a fix shortly. Jeff
--- expect 2019-05-21 10:38:47 +0000 +++ actual 2019-05-21 10:38:47 +0000 @@ -1,5 +1,5 @@ -d0|main|version|||||2.22.0.rc1 -d0|main|start||_T_ABS_|||_EXE_ trace2 001return 0 -d0|main|cmd_name|||||trace2 (trace2) -d0|main|exit||_T_ABS_|||code:0 -d0|main|atexit||_T_ABS_|||code:0 +d0|th01:unknown|version|||||2.22.0.rc1 +d0|th02:unknown|start||_T_ABS_|||_EXE_ trace2 001return 0 +d0|th03:unknown|cmd_name|||||trace2 (trace2) +d0|th04:unknown|exit||_T_ABS_|||code:0 +d0|th06:unknown|atexit||_T_ABS_|||code:0