Hi,
Am 28.04.2011 11:24, schrieb Rainer Jung:
On Sparc I use gcc 4.1.2. All builds are 32 Bit.
Concerning the hangs (unterminated loops in my case), I did some more
investigation for 1.3.10 and confirmed using GDB, that there actually
was a cycle in the cleanups:
(gdb) print c
$1 = (cleanup_t *) 0x38558
(gdb) print *c
$2 = {next = 0x38558, data = 0x38558, plain_cleanup_fn = 0x38710,
child_cleanup_fn = 0x38798}
so c == c->next and thus apr_pool_cleanup_kill looped.
I didn't check, whether that was still true for 1.3.11. I don't know why
c == c->next.
Concerning gcc: I use the same gcc for building on Solaris 8 and on
Solaris 10, even the same binary gcc files. I never observed a problem
on the single CPU Sparc 8 system, but did observer problems on Solaris
10 for 1.3.10 and for 1.3.11. Apart from the OS version the other major
difference is concurrency in hardware (used Niagara CPU with 6 or 8
cores and 4 times the number of strands when testing 1.3.10, and a more
traditional 2 CPU Sparc V240 when testing 1.3.11).
I hope I have some time to check older versions, like 1.3.9 etc. and
maybe also older apr (pool) versions to see, whether I can narrow down
the reason. Unfortunately until now, I could only reproduce the two
problems (unterminated loop, crash) when doing the testing as part of
the mass building, which takes time (a couple of hours). When running
testall after building even in loops, I could not reproduce the problems
...
I can only add that I get also sporadic segfaults (invalid mem access)
on NetWare with CodeWarrior compiler; and since otherwise httpd works
fine when comsuming same APR/APU I believe that something is wrong with
our test suite - it seems to me that it doesnt behave correctly in case
of errors, I mean that not allways return codes of a fucntion failure
are tested, and the test then runs into next function call with
paramters being NULL or something like that ...
also I believe that we fixed some of these already in 2.0 but not yet
backported;
though I had not the time yet to check into this deeper ...
anyway, I see no regression for NetWare - the failing tests are same as
with last release, so:
+1 for NetWare
builds and runs fine with APR-1.4.2-dev / httpd 2.2.18-dev.
Gün.