summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'hardened/toolchain/branches/pieworld/pieworld.README')
-rw-r--r--hardened/toolchain/branches/pieworld/pieworld.README140
1 files changed, 70 insertions, 70 deletions
diff --git a/hardened/toolchain/branches/pieworld/pieworld.README b/hardened/toolchain/branches/pieworld/pieworld.README
index 7811ba4..ada2e54 100644
--- a/hardened/toolchain/branches/pieworld/pieworld.README
+++ b/hardened/toolchain/branches/pieworld/pieworld.README
@@ -96,82 +96,82 @@ Investigations
2) glibc-2.5 failures:
-For reference, on vanilla x86 the following fail:
+For reference, on vanilla x86 the following fail (both in and out of a chroot):
+
+ linuxthreads/posix/annexc
+ Expected (ignored) http://sourceware.org/ml/libc-hacker/1998-11/msg00207.html
linuxthreads/linuxthreads/tst-clock1
+ Time between threads is too short - expected 1 sec, got a fraction.
linuxthreads/rt/tst-aio9
+ Limitation of linuxthreads? (ok on nptl) Hints to that effect http://sourceware.org/ml/libc-ports/2006-08/msg00016.html
linuxthreads/rt/tst-aio10
-so are ignored for the purposes of analysing failures on hardened.
+ Limitation of linuxthreads? (ok on nptl) http://sourceware.org/ml/libc-ports/2006-08/msg00016.html
+ linuxthreads/elf/check-localplt
+ bunch of stuff appears, mostly from libpthread.so, that isn't expected
+ linuxthreads/c++-types-check
+ pthread_attr_t and pthread_rwlock_t are different from expected.
+
+ ok nptl/posix/annexc
+ Expected (ignored) http://sourceware.org/ml/libc-hacker/1998-11/msg00207.html
+ ok nptl/nptl/tst-cancel1
+ Requires >=gcc-4.2 http://sourceware.org/ml/libc-alpha/2006-09/msg00039.html
+
+and on vanilla amd64 (nptlonly) the following fail:
+ nptl/iconvdata/iconv-test
+ nptl/malloc/tst-mtrace
+ nptl/grp/tst_fgetgrent
+ nptl/posix/tst-nice
+ nptl/posix/globtest
+ ok nptl/posix/annexc
+ nptl/io/ftwtest
+ ok nptl/nptl/tst-cancel1
+ nptl/rt/tst-cpuclock2
-Some of these may be down to being run in a chroot.
+so are ignored for the purposes of analysing failures on hardened.
Note also - ppc64 and sparc64 can't have linuxthreads as it doesn't
compile (some changes that are in for nptl have not been back-ported).
-x86 (non-hardened kernel):
-
-amd64 (non-hardened kernel):
- linuxthreads/libio/tst-wmemstream1
- linuxthreads/libio/tst-wmemstream2
- linuxthreads/libio/bug-wmemstream1
- linuxthreads/dlfcn/default
- linuxthreads/linuxthreads/tststatic
- linuxthreads/linuxthreads/tst-cancel-static
- linuxthreads/linuxthreads/tst-stackguard1-static
- linuxthreads/elf/tst-tls1
- linuxthreads/elf/tst-tls2
- linuxthreads/elf/tst-tls1-static
- linuxthreads/elf/tst-tls2-static
- linuxthreads/elf/resolvfail
- linuxthreads/elf/constload1
- nptl/libio/tst-wmemstream1
- nptl/libio/tst-wmemstream2
- nptl/libio/bug-wmemstream1
- nptl/dlfcn/default
- nptl/nptl/tst-cancel1
- nptl/elf/tst-tls1
- nptl/elf/tst-tls2
- nptl/elf/tst-tls1-static
- nptl/elf/tst-tls2-static
- nptl/elf/resolvfail
- nptl/elf/constload1
-
-ppc (luna, hardened):
- linuxthreads/dlfcn/default
- linuxthreads/linuxthreads/tst-context
- linuxthreads/rt/tst-mqueue6
- linuxthreads/rt/tst-mqueue8
- linuxthreads/elf/tst-tls1
- linuxthreads/elf/tst-tls2
- linuxthreads/elf/resolvfail
- linuxthreads/elf/constload1
- nptl/dlfcn/default
- nptl/nptl/tst-tls2
-PaX nptl/nptl/tst-execstack
- nptl/rt/tst-cputimer1
- nptl/elf/tst-tls1
- nptl/elf/tst-tls2
- nptl/elf/resolvfail
- nptl/elf/constload1
-
-ppc64 (cottonwoord, non-hardened):
- nptl/dlfcn/default
- nptl/misc/tst-pselect
- nptl/nptl/tst-robust7
- nptl/nptl/tst-tls2
- nptl/elf/tst-tls1
- nptl/elf/tst-tls2
- nptl/elf/resolvfail
- nptl/elf/constload1
-
-sparc64 (bender, non-hardened - linuxthreads not available):
- nptl/math/test-fenv
- nptl/dlfcn/default
- nptl/nptl/tst-eintr1
- nptl/nptl/tst-cancel20
- nptl/nptl/tst-cancelx20
- nptl/elf/tst-tls1
- nptl/elf/tst-tls2
- nptl/elf/resolvfail
- nptl/elf/constload1
-
+Kernel -> x86 x86h ppc ppch amd64 amd64h sparc sparch ppc64 ppc64h Reason
+NPTL Test v (? segfault)
+libio/tst-wmemstream1 X (? segfault)
+libio/tst-wmemstream2 X (? segfault)
+libio/bug-wmemstream1 X (? segfault)
+math/test-fenv X (?)
+dlfcn/default X X X X (?)
+posix/annexc X X X X (expected)
+misc/tst-pselect X (?)
+nptl/tst-execstack X (PaX)
+nptl/tst-cancel1 X (expected)
+nptl/rt/tst-cpuclock2 X (?)
+nptl/tst-eintr1 X (?)
+nptl/tst-cancel20 X (?)
+nptl/tst-cancelx20 X (?)
+elf/tst-tls1 X X X X (local-exec TLS)
+elf/tst-tls2 X X X X (local-exec TLS)
+elf/tst-tls1-static X X X X (local-exec TLS)
+elf/tst-tls2-static X X X X (local-exec TLS)
+elf/resolvfail X X X X (BIND_NOW)
+elf/constload1 X X X X (BIND_NOW)
+elf/order X X X X (BIND_NOW)
+elf/lateglobal X X X X (BIND_NOW)
+elf/dblload X X X X (BIND_NOW)
+elf/dblunload X X X X (BIND_NOW)
+elf/reldep6 X X X X (BIND_NOW)
+elf/circleload1 X X X X (BIND_NOW) elf/tst-tls3 X X (?)
+elf/tst-tls10 X X X (local-exec TLS)
+elf/tst-tls14 X (local-exec TLS)
+elf/tst-execstack X (PaX)
+elf/tst-execstack-needed X (PaX)
+elf//tst-execstack-prog X (PaX)
+elf/tst-global1 X X X X (BIND_NOW)
+elf/tst-audit2 X X X (local-exec TLS)
+
+PaX: PaX kernel causes execstack behaviour to fail (a good thing, where PaX is concerned).
+BIND_NOW: These tests require that some of their links be -Wl,-z,lazy (perhaps we could add this explicitly)
+local-exec TLS: The local-exec TLS model is not compatible with PIC (and PIE)
+
+posix/annexc is ignored upstream (http://sourceware.org/ml/libc-hacker/1998-11/msg00207.html)
+
+tst-cancel1 fails on x86/amd64 because support is not in gcc-4.1.1 - gcc-4.2 will fix this (http://sourceware.org/ml/libc-alpha/2006-09/msg00039.html)