diff options
Diffstat (limited to 'open_issues')
-rw-r--r-- | open_issues/glibc.mdwn | 81 | ||||
-rw-r--r-- | open_issues/glibc/t/tls.mdwn | 6 | ||||
-rw-r--r-- | open_issues/glibc_madvise_vs_static_linking.mdwn | 2 | ||||
-rw-r--r-- | open_issues/libpthread_glibc_nptl_testsuite.mdwn | 28 |
4 files changed, 76 insertions, 41 deletions
diff --git a/open_issues/glibc.mdwn b/open_issues/glibc.mdwn index e94a4f1f..31cafbfe 100644 --- a/open_issues/glibc.mdwn +++ b/open_issues/glibc.mdwn @@ -36,8 +36,8 @@ git log --reverse --pretty=fuller --stat=$COLUMNS,$COLUMNS -w -p -C --cc ..sourc --> -Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb -(2012-04-05) sources|source_repositories/glibc]]. +Last reviewed up to the [[Git mirror's 56e49b714ecd32c72c334802b00e3d62008d98e3 +(2012-07-25) sources|source_repositories/glibc]]. * `t/hurdsig-fixes` @@ -47,7 +47,9 @@ Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb * `t/host-independency` - `libc-alpha` discussion/commit. GCC + [[!message-id "87bougerfb.fsf@kepler.schwinge.homeip.net"]], [[!message-id + "20120525202732.GA31088@intel.com"]], commit + 918b56067a444572f1c71b02f18255ae4540b043. [[!GCC_PR 53183]], GCC commit c05436a7e361b8040ee899266e15bea817212c37. * `t/sysvshm` @@ -122,7 +124,7 @@ Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb checking for i386_set_gdt in mach_i386.defs... yes checking whether i586-pc-gnu-mig supports the retcode keyword... yes - * `elf/stackguard-macros.h` + * `sysdeps/i386/stackguard-macros.h` See [[t/tls|t/tls]]. @@ -281,6 +283,7 @@ Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb * `io/fcntl.h [__USE_ATFILE]` Do we support `AT_FDCWD` et al.? + (80b4e5f3ef231702b24d44c33e8dceb70abb3a06.) * `MAP_POPULATE` (`mmap`, `sys/mman.h`) -- *Populate (prefault) pagetables.* @@ -294,16 +297,15 @@ Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb make_pages_present(addr, addr + len); return addr; - `t/mmap`. - - Is only advisory, so can worked around with `#define 0`. + Is only advisory, so can worked around with `#define MAP_POPULATE 0`, + 8069478040336a7de3461be275432493cc7e4c91. * `t/opendirat`: `opendirat` (`scandirat`, `scandirat64`) Need changes equivalent to c55fbd1ea768f9fdef34a01377702c0d72cbc213 + 14d96785125abee5e9a49a1c3037f35a581750bd. - * `madvise`, `MADV_DONTNEED` + * `madvise`, `MADV_DONTNEED`, `MADV_DONTDUMP`, `MADV_DODUMP` [[glibc_madvise_vs_static_linking]]. @@ -451,9 +453,6 @@ Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb * 7fb90fb89bbdf273ab7ab96517fe1b156cd7aee1 + 6fb2dde3f1aa3a1419cb6c2dfa53dd1d506722a4 -- `Fix Linux getcwd for long paths` - * [low] [[!taglink open_issue_libpthread]] - 5bdcc10322c488f53557440acf71623d8b313ab5 -- return `EAGAIN` instead of - `ENOMEM`. * f574184a0e4b6ed69a5d9a3234543fba6d2a7367 -- `Fix sched_setscheduler call in spawn implementation` * 3b85df27870a47ed1db84e948e37a5a50a178a92 + @@ -541,8 +540,7 @@ Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb <http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html>. * [low] `conformtest`, 3134156779108fe8b46e0f4cd60d837572faaa93 + 4efeffc1d583597e4f52985b9747269e47b754e2 + - d94a4670800de6e8f088b8630ad5142866127980 -- takes 1.75 h (out of 2.75 h - total) on coulomb.SCHWINGE -- disable? Should probably mirror + d94a4670800de6e8f088b8630ad5142866127980 -- should probably mirror `bits/siginfo.h` changes. * [low] stack guard, 6c6a98c983c44b440ae66d2aa8f32529a9dd7bfe, [[!message-id "4F3BE241.9090409@mentor.com"]] -- anything needed for @@ -553,18 +551,26 @@ Last reviewed up to the [[Git mirror's e80d6f94e19d17b91e3cd3ada7193cc88f621feb "Pine.LNX.4.64.1203090206420.18868@digraph.polyomino.org.uk"]] 02a6f887cb3e2c048937111eb4cf150d397609de -- probably should do the same for the generic version as used by GNU Hurd. - * [log] CFI for `_start`, 6a1bd2a100c958d30bbfe8c9b8f9071d24b7c3f4, + * [low] CFI for `_start`, 6a1bd2a100c958d30bbfe8c9b8f9071d24b7c3f4, [[!message-id "20120316180551.GA6291@host2.jankratochvil.net"]] -- what about other architectures? + * `sendmmsg` usage, c030f70c8796c7743c3aa97d6beff3bd5b8dcd5d -- need a + `ENOSYS` stub, [[!message-id "87a9zubdm9.fsf@schwinge.name"]], + `t/sendmmsg`. + * `linkobj/libc.so`, 510bbf14b4f25fec8ee3a2d24de3f24bdbf84333 -- need to + adapt for (conditional?) Sun RPC reversion (if that was the original + cause for the patch)? + * [low] `Add __fsword_t and use it in bits/statfs.h`, + 3e5aef87d76cfa7354f2b0d82b96e59280720796, [[!message-id + "20120517134700.GA19046@intel.com"]] -- only updates one copy of + `bits/statfs.h`; update the others, too, for consistency. * *baseline* - * [high] `sendmmsg` usage, c030f70c8796c7743c3aa97d6beff3bd5b8dcd5d -- - need a `ENOSYS` stub. # Build Here's a log of a glibc build run; this is from our [[Git repository's -d7294bbed51242338c4e9c15e1ee74a763259faf (2012-06-21; 2012-03-28) ([[!message-id "878vfhdapq.fsf@schwinge.name"]] applied) +8958805c11c741d9211e20612c86271d906c9a0b (2012-07-28; 2012-06-30) sources|source_repositories/glibc]], run on coulomb.SCHWINGE. $ export LC_ALL=C @@ -577,7 +583,8 @@ This takes up around 500 MiB and needs roughly X min on kepler.SCHWINGE and 100 min on coulomb.SCHWINGE. <!-- - $ (make install_root=/INVALID && touch .go-install) 2>&1 | tee log_build_ && test -f .go-install && (make install_root="$PWD".install install && touch .go-check) 2>&1 | tee log_install && test -f .go-check && ln -s /usr/lib/i386-*gnu/libstdc++.so.6 /lib/i386-*gnu/libpthread-stubs.so.0 /lib/i386-*gnu/libgcc_s.so.1 mach/libmachuser.so.1 hurd/libhurduser.so.0.3 ./ && make -k install_root=/INVALID check TIMEOUTFACTOR=10 2>&1 | tee log_test + + $ (make install_root=/INVALID && touch .go-install) 2>&1 | tee log_build_ && test -f .go-install && (make install_root="$PWD".install install && touch .go-check) 2>&1 | tee log_install && test -f .go-check && ln -s /usr/lib/i386-*gnu/libstdc++.so.6 /lib/i386-*gnu/libpthread-stubs.so.0 /lib/i386-*gnu/libgcc_s.so.1 mach/libmachuser.so.1 hurd/libhurduser.so.0.3 ./ && make -k install_root=/INVALID check fast-check=yes 2>&1 | tee log_test Mask out gcc-4.X (with possibly a backslash before the dot), GCC 4.5's column output for (warning, error) messages, GCC 4.6's `[-Wsomething]` or `[enabled by @@ -630,6 +637,8 @@ TODO. sysdeps/mach/hurd/ioctl.c: In function '__ioctl': sysdeps/mach/hurd/ioctl.c:306: warning: case value '0' not in enumerated type 'error_t' + [[!message-id "20120723195143.7F8142C0B9@topped-with-meat.com"]]. + * baseline fd5bdc0924e0cfd1688b632068c1b26f3b0c88da..2ba92745c36eb3c3f3af0ce1b0aebd255c63a13b introduces: @@ -657,15 +666,6 @@ TODO. fd5bdc0924e0cfd1688b632068c1b26f3b0c88da..2ba92745c36eb3c3f3af0ce1b0aebd255c63a13b introduces: - ../sysdeps/i386/fpu/bits/fenv.h: Assembler messages: - ../sysdeps/i386/fpu/bits/fenv.h:125: Warning: translating to `fdivp %st,%st(1)' - - Should be fixed as of 2012-04-16. - - * baseline - fd5bdc0924e0cfd1688b632068c1b26f3b0c88da..2ba92745c36eb3c3f3af0ce1b0aebd255c63a13b - introduces: - nscd_gethst_r.c: In function '__nscd_get_nl_timestamp': nscd_gethst_r.c:112:4: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration] @@ -683,12 +683,6 @@ TODO. regcomp.c:935:4: warning: large integer implicitly truncated to unsigned type [-Woverflow] regcomp.c:936:4: warning: large integer implicitly truncated to unsigned type [-Woverflow] - In file included from pldd.c:230:0: - pldd-xx.c:26:0: warning: "static_assert" redefined [enabled by default] - ../assert/assert.h:119:0: note: this is the location of the previous definition - - Should be fixed as of 2012-04-16. - tst-relsort1.c:6:1: warning: function declaration isn't a prototype [-Wstrict-prototypes] @@ -699,7 +693,7 @@ TODO. $ make install_root="$PWD".install install 2>&1 | tee log_install [...] -This takes up around 100 MiB, and needs roughly X min on kepler.SCHWINGE and 18 +This takes up around 100 MiB, and needs roughly X min on kepler.SCHWINGE and 16 min on coulomb.SCHWINGE. @@ -721,10 +715,14 @@ TODO. # Testsuite - $ make -k install_root=/INVALID check 2>&1 | tee log_test + $ make -k install_root=/INVALID check fast-check=yes 2>&1 | tee log_test [...] -This needs roughly X h on kepler.SCHWINGE and 2.75 h on coulomb.SCHWINGE. +This needs roughly X min on kepler.SCHWINGE and 60 min on coulomb.SCHWINGE. + +Specifying `fast-check=yes` disables the `conformtest` which takes 1.75 h (out +of 2.75 h total) on coulomb.SCHWINGE, doesn't pass anyway, and clearly isn't +our most critical issue to solve. <!-- $ ssh kepler.SCHWINGE 'cd tmp/source/gdb/ && sed < hurd/master.build/gdb/testsuite/gdb.sum -e "s%\(/media/data\)\?${PWD}%[...]%g"' > open_issues/gdb/sum_linux @@ -825,7 +823,7 @@ There is quite a baseline of failures. Will either need a `hurd/netinet/if_ether.h` that includes `<net/if_ether.h>`, or can do that in the generic `netinet/if_ether.h`? - See also [[!sourceware_bug 11142]]. + See also [[!sourceware_PR 11142]]. * `gmon/tst-sprofil` @@ -843,7 +841,9 @@ There is quite a baseline of failures. getcontext failed, errno: 1073741902. - Is not implemented; see above. + Is not implemented; see above. In 8958805c11c741d9211e20612c86271d906c9a0b + testing, `stdlib/bug-getcontext.out` now says: *Skipping test; no support + for FP exceptions.* * `elf/tst-unique3lib.so`, `elf/tst-unique3lib2.so`, `elf/tst-unique4lib.so` @@ -865,11 +865,14 @@ There is quite a baseline of failures. `expected-results-i486-gnu-libc`). * `elf/tst-unused-dep.out` (1f393a11f65dcaa1952bdcaf0317a65a5f8aff9d, - [[!sourceware_bug 13706]], [[!message-id "4F4210C1.1090704@redhat.com"]]) + [[!sourceware_PR 13706]], [[!message-id "4F4210C1.1090704@redhat.com"]]) Unused direct dependencies: /home/thomas/tmp/glibc/tschwinge/Roger_Whittaker.build-gcc-4.6-486/dlfcn/libdl.so.2 + As of 8958805c11c741d9211e20612c86271d906c9a0b, this test now passes -- + correct? + ## OLD diff --git a/open_issues/glibc/t/tls.mdwn b/open_issues/glibc/t/tls.mdwn index 14ef36e4..68db2cc1 100644 --- a/open_issues/glibc/t/tls.mdwn +++ b/open_issues/glibc/t/tls.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2011 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2011, 2012 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -53,6 +53,10 @@ License|/fdl]]."]]"""]] <tschwinge> And the other offsers are generated via tcb-offsets.sym. <tschwinge> glibc's elf/stackguard-macros.h is wrong for us (but not used anywhere apart from elf/tst-stackguard1.c, I think). + +After commit a9538892adfbb9f092e0bb14ff3a1703973968af, it's +`sysdeps/i386/stackguard-macros.h`; problem remains. + <tschwinge> __thread __locale_t __libc_tsd_LOCALE = &_nl_global_locale; -- this means that a __libc_tsd_LOCALE values will be in the TLS segment, and this is what is being accessed from the assembler code diff --git a/open_issues/glibc_madvise_vs_static_linking.mdwn b/open_issues/glibc_madvise_vs_static_linking.mdwn index 1f766428..ab633b0f 100644 --- a/open_issues/glibc_madvise_vs_static_linking.mdwn +++ b/open_issues/glibc_madvise_vs_static_linking.mdwn @@ -11,7 +11,7 @@ License|/fdl]]."]]"""]] [[!tag open_issue_glibc]] -[[!sourceware_bug 4822]]. +[[!sourceware_PR 4822]]. $ echo 'int main() {}' | gcc -o /dev/null -static -x c - /usr/lib/gcc/i486-gnu/4.4.5/../../../libcrt.a(malloc.o): In function `_int_free': diff --git a/open_issues/libpthread_glibc_nptl_testsuite.mdwn b/open_issues/libpthread_glibc_nptl_testsuite.mdwn new file mode 100644 index 00000000..687f8eea --- /dev/null +++ b/open_issues/libpthread_glibc_nptl_testsuite.mdwn @@ -0,0 +1,28 @@ +[[!meta copyright="Copyright © 2012 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_glibc open_issue_libpthread]] + +For fun and profit we should run [[glibc]]'s [[NPTL]] testsuite against +[[libpthread]]. + +Also, there are sometimes issues fixed in NPTL that libpthread should also be +checked against. Totally incomplete list: + + * Return `EAGAIN` instead of `ENOMEM`, glibc + 5bdcc10322c488f53557440acf71623d8b313ab5. + * `pthread_cancel` when single-threaded, glibc + 439bf404b8fa125cf950dc1aa37838702c5353ea, [[!sourceware_PR 13613]], + [[!message-id "20120509202437.268a72b9@spoyarek"]]. + * `__libc_stack_end`, glibc 9c6ea9facbba4d430807bd21fa82892d713b1ecd, + 18b5e737de22462ab6b3fc89f26c9ad480ebb843, [[!sourceware_PR 12416]], + [[!message-id "20120419120021.4780e8c8@spoyarek"]], [[!message-id + "20120615005913.4f517e02@spoyarek"]], [[!message-id + "4FE378DE.8050906@mentor.com"]]. |