summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--community/meetings/fosdem_2013.mdwn58
-rw-r--r--hurd/translator/procfs/jkoenig/discussion.mdwn2
-rw-r--r--open_issues/glibc.mdwn391
-rw-r--r--open_issues/glibc_ptrace.mdwn4
-rw-r--r--open_issues/libpthread_addon.mdwn150
-rw-r--r--open_issues/sync_but_still_unclean_filesystem.mdwn2
-rw-r--r--shortcuts.mdwn4
7 files changed, 594 insertions, 17 deletions
diff --git a/community/meetings/fosdem_2013.mdwn b/community/meetings/fosdem_2013.mdwn
new file mode 100644
index 00000000..4acf0c90
--- /dev/null
+++ b/community/meetings/fosdem_2013.mdwn
@@ -0,0 +1,58 @@
+[[!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]]."]]"""]]
+
+[[!meta title="FOSDEM 2013"]]
+
+<http://fosdem.org/2013>
+
+FOSDEM will take place on February 2th/3th at the Université Libre de
+Bruxelles.
+
+
+# Who and When
+
+[[!table class="table_style_1" data="""
+"Name","Attending","Arrival","Return","Share room with us"
+"Samuel Thibault","yes","","","yes"
+"""]]
+
+
+# Multiserver, Microkernel-Based Operating Systems Devroom
+
+[Announcement](https://lists.fosdem.org/pipermail/microkernel-devroom/2012-October/000054.html).
+
+Talk proposal:
+
+title: The GNU/Hurd architecture, nifty features, and latest news
+
+Full name: Samuel Thibault
+
+Short abstract:
+GNU/Hurd aims at being a general-purpose Operating System with a strong emphasis
+on flexibility and freedom for the user, and thus based on a design made
+of a micro-kernel surrounded by a hird of userland servers. It has however
+a long-term vaporware reputation; development has indeed been relatively
+dormant for some time, but recent regain of interest has brought interesting
+improvements and stabilization, to the point that there will be a non-official
+release of the GNU/Hurd variant of Debian Wheezy, with about 75% of the Debian
+packages, including classical graphical desktop application (gnome, gnumeric,
+firefox, ...)
+
+This talk will present to GNU/Hurd in general and its "translator" mechanism
+which replaces the traditional notion of filesystem by userland processes, so
+as to provide strong flexibility to users and administrators, and we will demo
+it live. The subhurd/neighborhurd mechanism, a very natural way to provide
+virtualization container support on GNU/Hurd, will also be presented. We will
+also present recent developments, notably in terms of DDE device drivers run as
+userland processes, and discuss about maintenance of DDE.
+
+Duration:
+30m, 45m?
diff --git a/hurd/translator/procfs/jkoenig/discussion.mdwn b/hurd/translator/procfs/jkoenig/discussion.mdwn
index 612983db..cca9c3f3 100644
--- a/hurd/translator/procfs/jkoenig/discussion.mdwn
+++ b/hurd/translator/procfs/jkoenig/discussion.mdwn
@@ -299,6 +299,8 @@ Needed by glibc's `pldd` tool (commit
with nocheck (ie skipping the test suite run) instead of investigate and
report why the test suite failed
+[[!GNU_Savannah_bug 32770]]
+
# IRC, freenode, #hurd, 2011-06-19
diff --git a/open_issues/glibc.mdwn b/open_issues/glibc.mdwn
index 24fe8026..e2b968c9 100644
--- a/open_issues/glibc.mdwn
+++ b/open_issues/glibc.mdwn
@@ -220,7 +220,7 @@ Last reviewed up to the [[Git mirror's d3bd58cf0a027016544949ffd27300ac5fb01bb8
`open_by_handle_at`, `process_vm_readv`, `process_vm_writev`, `sendmmsg`,
`setns`, `sync_file_range`
- Check also the content of `gnu/stubs-32.h`, which lists all the functions
+ Check also the content of `gnu/stubs.h`, which lists all the functions
marked as stub which only return `ENOSYS`.
* `chflags`
@@ -305,10 +305,6 @@ Last reviewed up to the [[Git mirror's d3bd58cf0a027016544949ffd27300ac5fb01bb8
* [[`mremap`|mremap]]
- * `syncfs`
-
- We should be easily able to implement that one.
-
* `futimesat`
If we have all of 'em (check Linux kernel), `#define __ASSUME_ATFCTS`.
@@ -839,9 +835,9 @@ Last reviewed up to the [[Git mirror's d3bd58cf0a027016544949ffd27300ac5fb01bb8
kinds of unused configuration options and dead code.`). `NO_STARTER`
changes (should be OK).
* [high] `pagesize`, 02d46fc4b969e25e4ba0c54aa95fa98d7279bd05 (`Simplify
- malloc initialization`); aebae0537dcb408100b88c6b7647a7e858c43237, `BZ
- 11929`. Is this all kosher for us? See [[!message-id
- "87mxd9hl2n.fsf@kepler.schwinge.homeip.net"]].
+ malloc initialization`); aebae0537dcb408100b88c6b7647a7e858c43237,
+ [[!sourceware_PR 11929]]. Is this all kosher for us? See
+ [[!message-id "87mxd9hl2n.fsf@kepler.schwinge.homeip.net"]].
* [OK] 83cd14204559abbb52635006832eaf4d2f42514a (`Remove --wth-tls
option, TLS support is required`).
* a7c8e6a1478de9f990b11e5e853318ccbe4330f2 (`Fix invalid conversion in
@@ -944,7 +940,7 @@ default]` identifiers which warning flag triggered.
TODO.
- * With GCC 4.5, there's a ton of these warnings:
+ * With GCC >= 4.5, there's a ton of these warnings:
hurd/hurd.h: In function '__hurd_fail':
hurd/hurd.h:73: warning: case value '0' not in enumerated type 'error_t'
@@ -1089,8 +1085,378 @@ Comparing the results files, [[sum_linux]] to [[sum_hurd]]:
There is quite a baseline of failures.
+ * `annexc.out`
+
+ TODO
+
+ * `bug22.out`
+
+ TODO
+
+ * `bug-atexit3.out`
+
+ TODO
+
+ * `bug-getcontext.out`
+
+ getcontext failed, errno: 1073741902.
+
+ Is not implemented; see above. In 8958805c11c741d9211e20612c86271d906c9a0b
+ testing, `stdlib/bug-getcontext.out` now says: *Skipping test; no support
+ for FP exceptions.*, in cba1c83ad62a11347684a9daf349e659237a1741 testing,
+ it's back to the previous failure.
+
+ * `bug-regex31-mem`, `tst-error1-mem`, `tst-fnmatch-mem`,
+ `tst-fopenloc.check`
+
+ *output* files: some memory not freed.
+
+ Caused by different memory allocation way in libio, see also
+ [[!message-id "87mxd9hl2n.fsf@kepler.schwinge.homeip.net"]]
+
+ * `bug-ulimit1.out`
+
+ Buggy sysdeps/unix/bsd/ulimit.c return values.
+
+ [[!message-id "201211182342.51619.toscano.pino@tiscali.it"]]
+
+ * `check-execstack.out`
+
+ $BUILDDIR/libc.so.phdr: *** executable stack signaled
+
+ * `check-local-headers.out`
+
+ Most of the external headers used are:
+
+ * `/usr/include/device/bpf.h`
+
+ * `/usr/include/device/device_types.h`
+
+ * `/usr/include/device/net_status.h`
+
+ * `/usr/include/cthreads.h`
+
+ * `/usr/include/hurd/hurd_types.h`
+
+ * `/usr/include/hurd/ioctls.defs`
+
+ * `/usr/include/hurd/ioctl_types.h`
+
+ * `/usr/include/hurd/paths.h`
+
+ * `check-localplt.out`
+
+ Around 500 or so `Extra PLT reference`.
+
+ * `check-textrel.out`
+
+ $BUILDDIR/libc.so.dyn: *** text relocations used
+
+ * `opendir-tst1.out`, `tst-fdopendir2.out`
+
+ `opendir` and `fdopendir` do not return `ENOTDIR` if `fd` is not a directory.
+
+ * `test-assert-perr.out`
+
+ TODO
+
+ * `math/test-idouble`, `math/test-ifloat`, `math/test-ildoubl`,
+ `math/test-ldouble`
+
+ SIGSEGV.
+
+ * `test-float.out`
+
+ TODO
+
+ * `test-lfs.out`
-### Additional Failures Compared to Debian
+ TODO
+
+ * `test-multiarch.out`
+
+ Needs [[`/proc/cpuinfo`|hurd/translator/procfs/jkoenig/discussion]]
+ providing the `flags` line.
+
+ * `tst-aio2`, `tst-aio3`,
+ `tst-mqueue3`, `tst-mqueue6`,
+ `tst-mqueue8`, `tst-thrlock`, `tst-timer3`,
+ `libnss_test1.so`
+
+ Compilation: missing `pthread_attr_init`, `pthread_barrier_init`,
+ `pthread_create`, etc.
+
+ * `tst-aio8.out`, `tst-aio9.out`, `tst-aio10`
+
+ Compilation: missing `pthread_attr_init`, `pthread_barrier_init`,
+ `pthread_create`, etc.
+
+ Most will compile and work (except `tst-aio`, `tst-aio9`, `tst-aio10`) with
+ [[!message-id "201209302353.51055.toscano.pino@tiscali.it"]] in libpthread.
+
+ * `tst-array*`
+
+ Failures also seen on GNU/Linux; [[!message-id
+ "50950082.1070906@df1tl.local.here"]].
+
+ gcc-4.6 tst-array1.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wno-parentheses -Wstrict-prototypes -I../include -I[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/
+ gcc-4.6 -nostdlib -nostartfiles -o [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1 -Wl,-dynamic-linker=/lib/ld.so.1 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486
+ [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/ld.so.1 --library-path [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/math:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf:[
+ cmp [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1.out tst-array1.exp > /dev/null
+ make[2]: *** [[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1.out] Error 1
+ gcc-4.6 tst-array2.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wno-parentheses -Wstrict-prototypes -I../include -I[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/
+ gcc-4.6 tst-array2dep.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wno-parentheses -Wstrict-prototypes -fPIC -I../include -I[...]/tschwinge/Roger_Whittaker.build-gcc
+ gcc-4.6 -shared -static-libgcc -Wl,-dynamic-linker=/lib/ld.so.1 -Wl,-z,defs -B[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/csu/ -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both -L[...]/tschwinge/Roger_Whittaker.build-gcc-4.6
+ gcc-4.6 -nostdlib -nostartfiles -o [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array2 -Wl,-dynamic-linker=/lib/ld.so.1 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486
+ [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/ld.so.1 --library-path [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/math:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf:[
+ cmp [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array2.out tst-array2.exp > /dev/null
+ make[2]: *** [[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array2.out] Error 1
+ gcc-4.6 tst-array3.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wno-parentheses -Wstrict-prototypes -I../include -I[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/
+ gcc-4.6 -nostdlib -nostartfiles -o [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array3 -Wl,-dynamic-linker=/lib/ld.so.1 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486
+ [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/ld.so.1 --library-path [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/math:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf:[
+ cmp [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array3.out tst-array1.exp > /dev/null
+ make[2]: *** [[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array3.out] Error 1
+ gcc-4.6 tst-array4.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wno-parentheses -Wstrict-prototypes -I../include -I[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/
+ gcc-4.6 -nostdlib -nostartfiles -o [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array4 -Wl,-dynamic-linker=/lib/ld.so.1 -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486
+ [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/ld.so.1 --library-path [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/math:[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf:[
+ cmp [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array4.out tst-array4.exp > /dev/null
+ make[2]: *** [[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array4.out] Error 1
+
+ `tst-array5` passes.
+
+ gcc-4.6 tst-array1-static.c -c -std=gnu99 -fgnu89-inline -O2 -Wall -Winline -Wwrite-strings -fmerge-all-constants -frounding-math -g -Wno-parentheses -Wstrict-prototypes -I../include -I[...]/tschwinge/Roger_Whittaker.build-gcc-4
+ gcc-4.6 -nostdlib -nostartfiles -static -o [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1-static [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/csu/crt0.o [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/csu/crti
+ [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1-static > [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1-static.out
+ cmp [...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1-static.out tst-array1.exp > /dev/null
+ make[2]: *** [[...]/tschwinge/Roger_Whittaker.build-gcc-4.6-486/elf/tst-array1-static.out] Error 1
+
+ `tst-array5-static` passes.
+
+ * `tst-audit1.out`, `tst-audit2.out`
+
+ SIGKILL.
+
+ * `tst-chk1.out`
+
+ TODO
+
+ * `tst-chk2.out`
+
+ TODO
+
+ * `tst-chk3.out`
+
+ TODO
+
+ * `tst-chk4.out`
+
+ TODO
+
+ * `tst-chk5.out`
+
+ TODO
+
+ * `tst-chk6.out`
+
+ TODO
+
+ * `tst-cputimer1.o`, `tst-cputimer2.o`, `tst-cputimer3.o`,
+ `tst-timer4.o`, `tst-timer5.o`
+
+ Missing `SIGRTMIN`.
+
+ All these tests #include `tst-timer4.c`.
+
+ * `tst-timer5.o`
+
+ TODO
+
+ * `tst-dlmopen1.out`
+
+ TODO
+
+ * `tst-ether_line.o`
+
+ tst-ether_line.c:19: error: 'ETH_ALEN' undeclared (first use in this function)
+
+ 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_PR 11142]].
+
+ * `tst-fdopendir.out`
+
+ directory atime changed
+
+ TODO
+
+ * `tst-futimesat.out`
+
+ `futimesat` is a stub.
+
+ * `tst-getconf.out`
+
+ Ends with:
+
+ getconf POSIX_ALLOC_SIZE_MIN /: [...]/posix/getconf: pathconf: /: Invalid argument
+
+ It fails because of unimplemented pathconf cases: `_PC_ALLOC_SIZE_MIN`,
+ `_PC_REC_INCR_XFER_SIZE`, `_PC_REC_MAX_XFER_SIZE`, `_PC_REC_MIN_XFER_SIZE`,
+ `_PC_REC_XFER_ALIGN`, `_PC_SYMLINK_MAX`, `_PC_2_SYMLINKS`.
+
+ `_CS_GNU_LIBPTHREAD_VERSION` will be cleanly solved with
+ [[!message-id "201209302353.51055.toscano.pino@tiscali.it"]] and libpthread
+ compiled as add-on.
+
+ * `tst-grantpt.out`
+
+ posix_openpt(O_RDWR) failed
+ errno 1073741902 (Function not implemented)
+
+ `posix_openpt` is a stub.
+
+ grantpt(): expected: return = -1, errno = 1073741846
+ got: return = -1, errno = -303
+
+ `grantpt` (actually `ptsname_r`), does not fail with `ENOTTY` when the `fd`
+ does not refer to a PTY master.
+
+ * `tst-lfschk2.out`
+
+ TODO
+
+ * `tst-lfschk3.out`
+
+ TODO
+
+ * `tst-lfschk4.out`
+
+ TODO
+
+ * `tst-lfschk5.out`
+
+ TODO
+
+ * `tst-lfschk6.out`
+
+ TODO
+
+ * `tst-longjmp_chk2.out`
+
+ TODO
+
+ * `tst-mqueue5.o`
+
+ Missing `SIGRTMIN`.
+
+ * `tst-pselect.o`
+
+ Missing `SA_NOCLDWAIT`.
+
+ * `tst-secure-getenv.out`
+
+ Needs [[`/proc/self/exe`|hurd/translator/procfs/jkoenig/discussion]].
+
+ * `tst-sprofil.out`
+
+ Floating point exception
+
+ * `tst-stackguard1.out`
+
+ TODO
+
+ * `tst-stackguard1-static.out`
+
+ TODO
+
+ * `tststatic2.out`
+
+ TODO
+
+ * `tststatic.out`
+
+ TODO
+
+ * `tst-strtod-round.out`
+
+ TODO
+
+ * `tst-timer2.o`
+
+ Missing `SIGRTMIN`.
+
+ * `tst-timer.out`
+
+ TODO
+
+ * `tst-tls9-static.out`
+
+ TODO
+
+ * `tst-unique3lib.so`, `tst-unique3lib2.so`, `tst-unique4lib.so`
+
+ Only with GCC 4.4; no longer with 4.5 or 4.6:
+
+ /home/thomas/tmp/glibc/tschwinge/Roger_Whittaker.build-gcc-4.4-486/elf/tst-unique3lib.os:(.data.DW.ref.__gxx_personality_v0[DW.ref.__gxx_personality_v0]+0x0): undefined reference to `__gxx_personality_v0'
+
+ * `tst-vfork3-mem`
+
+ + 0x0804cee0 Alloc 10 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 11 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 12 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 17 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 18 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 19 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 20 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 25 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 26 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 27 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 28 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 33 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 34 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 35 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 36 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 41 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 42 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 43 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 44 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 49 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 50 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 51 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 52 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 57 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 58 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 59 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 60 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 65 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 66 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 67 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 68 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 73 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 74 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 75 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ + 0x0804cfa8 Alloc 76 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x00000008 Alloc 81 duplicate: 0x10df0c8 $BUILDDIR/libc.so.0.3:(argz_create+0x68)[0x10df0c8]
+ + 0x0804cee0 Alloc 82 duplicate: 0x1095389 $BUILDDIR/libc.so.0.3:[0x1095389]
+ + 0x0804cf90 Alloc 83 duplicate: 0x1156963 $BUILDDIR/libc.so.0.3:(tsearch+0xe3)[0x1156963]
+ - 0x0804c8d8 Free 84 was never alloc'd 0x10955fc
+ - 0x0804c960 Free 87 was never alloc'd 0x115672f
+ - 0x0804c9b8 Free 88 was never alloc'd 0x1156737
+
+ Memory not freed:
+ -----------------
+ Address Size Caller
+ 0x0804cfa8 0x73 at 0x10df0c8
+ 0x00000008 0 at 0x10df0c8
+
+ TODO
+
+ * `tst-waitid.out`
+
+ Fails sometimes (is listed in Debian eglibc-2.13-21's
+ `expected-results-i486-gnu-libc`).
+
+
+### Additional Failures Compared to Debian (OLD)
$ bash ~/tmp/glibc/debian/eglibc-2.13/debian/testsuite-checking/convertlog.sh log_test > log_test.filtered
$ bash ~/tmp/glibc/debian/eglibc-2.13/debian/testsuite-checking/compare.sh ~/tmp/glibc/debian/eglibc-2.13/debian/testsuite-checking/expected-results-i486-gnu-libc log_test.filtered
@@ -1186,10 +1552,13 @@ There is quite a baseline of failures.
Floating point exception
- * `posix/bug-regex31-mem`, `posix/tst-fnmatch-mem`
+ * `posix/bug-regex31-mem`, `posix/tst-fnmatch-mem`, `misc/tst-error1-mem`,
+ `libio/tst-fopenloc.check`
*output* files: some memory not freed.
+ [[!message-id "87mxd9hl2n.fsf@kepler.schwinge.homeip.net"]]
+
* `assert/test-assert.out`
Fails sometimes...
diff --git a/open_issues/glibc_ptrace.mdwn b/open_issues/glibc_ptrace.mdwn
index 6704ed80..7ca07077 100644
--- a/open_issues/glibc_ptrace.mdwn
+++ b/open_issues/glibc_ptrace.mdwn
@@ -39,9 +39,5 @@ License|/fdl]]."]]"""]]
* Some parts are wrongly implemented, e.g., `PTRACE_GETREGS` and
`PTRACE_SETREGS` both do the same thing.
- * `return` values are wrong, e.g., `return EOPNOTSUPP` should instead
- set `errno = EOPNOTSUPP` and `return -1` in a few places (but not
- with the three `PTRACE_PEEK*` requests.
-
Also consider the `sysdeps/generic/sys/ptrace.h` and
`sysdeps/unix/sysv/linux/sys/ptrace.h` files.
diff --git a/open_issues/libpthread_addon.mdwn b/open_issues/libpthread_addon.mdwn
new file mode 100644
index 00000000..26b24549
--- /dev/null
+++ b/open_issues/libpthread_addon.mdwn
@@ -0,0 +1,150 @@
+[[!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]]."]]"""]]
+
+[[!meta title="libpthread as glibc addon"]]
+
+[[!tag open_issue_glibc open_issue_libpthread]]
+
+This page lists all the notes, issues, etc, only about compiling libpthread
+as addon for glibc, *not* for general libpthread issues.
+
+# Building
+
+To build libpthread as glibc addon, copy libpthread inside the glibc tree,
+and then tell glibc's configure to use it:
+
+ $ cp /path/to/libpthread libpthread
+ $ ./configure [...] --enable-add-ons=[...],libpthread
+
+Currently, it is build like that in Debian since eglibc 2.13-31.
+
+# Issues and notes
+
+### `bits/` headers not used
+
+Recompiling glibc (e.g. on a Debian system) and running the
+`check-local-headers` test, `check-local-headers.out` shows:
+
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/pthread.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/thread-attr.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/mutex-attr.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/mutex.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/condition-attr.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/condition.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/rwlock-attr.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/rwlock.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/barrier-attr.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/barrier.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/thread-specific.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/once.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/cancelation.h
+ *** $(common-objpfx)elf/tst-thrlock.o: uses /usr/include/i386-gnu/bits/pthread-np.h
+
+This happens because these headers are in the `bits/` subdirectory in
+`sysdeps/generic` -- a `generic` sysdep is used only for the top-level
+`sysdeps` directory in glibc.
+
+### Use of hurd's libihash
+
+libpthread makes use of the ihash hurd library, as also glibc's
+`check-local-headers` test shows:
+
+ *** $(common-objpfx)libpthread/pt-alloc.o: uses /usr/include/hurd/ihash.h
+
+Possible alternatives: [[hurd/libihash]].
+
+### Executable stack
+
+Running glibc's `check-execstack` test gives in `check-execstack.out`:
+
+ $BUILDDIR/libpthread/libpthread.so.phdr: *** executable stack signaled
+
+### Extra PLT references
+
+Running glibc's `check-localplt` test gives in `check-localplt.out`:
+
+ Extra PLT reference: libpthread.so: pthread_detach
+ Extra PLT reference: libpthread.so: pthread_mutex_lock
+ Extra PLT reference: libpthread.so: pthread_mutexattr_settype
+ Extra PLT reference: libpthread.so: pthread_rwlock_rdlock
+ Extra PLT reference: libpthread.so: _pthread_spin_lock
+ Extra PLT reference: libpthread.so: pthread_attr_setstacksize
+ Extra PLT reference: libpthread.so: pthread_attr_getstacksize
+ Extra PLT reference: libpthread.so: pthread_attr_getstackaddr
+ Extra PLT reference: libpthread.so: pthread_attr_setstackaddr
+ Extra PLT reference: libpthread.so: pthread_exit
+ Extra PLT reference: libpthread.so: pthread_getspecific
+ Extra PLT reference: libpthread.so: __mutex_lock_solid
+ Extra PLT reference: libpthread.so: pthread_mutex_unlock
+ Extra PLT reference: libpthread.so: pthread_setcanceltype
+ Extra PLT reference: libpthread.so: pthread_key_create
+ Extra PLT reference: libpthread.so: pthread_cond_wait
+ Extra PLT reference: libpthread.so: pthread_rwlock_wrlock
+ Extra PLT reference: libpthread.so: pthread_once
+ Extra PLT reference: libpthread.so: pthread_cond_broadcast
+ Extra PLT reference: libpthread.so: pthread_setspecific
+ Extra PLT reference: libpthread.so: __pthread_get_cleanup_stack
+ Extra PLT reference: libpthread.so: pthread_rwlock_unlock
+ Extra PLT reference: libpthread.so: pthread_create
+ Extra PLT reference: libpthread.so: pthread_mutex_init
+ Extra PLT reference: libpthread.so: pthread_mutexattr_init
+ Extra PLT reference: libpthread.so: __mutex_unlock_solid
+ Extra PLT reference: libpthread.so: pthread_mutexattr_destroy
+ Extra PLT reference: libpthread.so: pthread_setcancelstate
+
+### `pthread` sysdep
+
+glibc provides a `pthread` sysdep (`sysdeps/pthread`) with pthread-based
+implementations of most of the `aio_*` and `lio_*` functions.
+
+[[!message-id "201209302353.51055.toscano.pino@tiscali.it"]]
+
+The above patches allows also to cleanly set the libpthread string version,
+returned e.g. for the `_CS_GNU_LIBPTHREAD_VERSION` value of `confstr`.
+
+About the glibc aio tests, they would all compile and work, except:
+
+ - `tst-aio` -- fails
+ - `tst-aio9`, `tst-aio10` -- time out
+
+### `bits/posix_opt.h`
+
+`bits/posix_opt.h` is the glibc header defining the various
+supported/unsupported `_POSIX_*` defines (e.g. `_POSIX_THREADS`, etc).
+
+Currently, glibc's `sysdeps/mach/hurd/bits/posix_opt.h` is patched in Debian
+to add all the defines advertizing thread-related support.
+An idea to avoid this would be to follow what is done in NPTL, and do the
+following:
+
+ - in glibc: leave `sysdeps/mach/hurd/bits/posix_opt.h` with *no*
+thread-related macros at all.
+
+ - in libpthread: provide `sysdeps/mach/hurd/bits/posix_opt.h` which would
+be a copy of glibc's `sysdeps/mach/hurd/bits/posix_opt.h` with also the thread
+macros.
+
+This approach would have the drawback that changes in the glibc header must be
+mirrored also in the libpthread version, but with the advantage that defines
+according to supported features in libpthread can be added in libpthread's own
+version (and glibc would pick it automatically).
+
+### Tests
+
+The (few) existing tests are not built (thus neither run) just like other tests
+in glibc.
+
+### `gai_misc.h`
+
+A pthread version of `gai_misc.h` must be provided by libpthread (just like
+NPTL provides one), either in `sysdeps/mach/hurd` or `sysdeps/pthread`
+(better, see above).
+
+Currently, it is provided in glibc itself in Debian.
diff --git a/open_issues/sync_but_still_unclean_filesystem.mdwn b/open_issues/sync_but_still_unclean_filesystem.mdwn
index c8a37169..eae98077 100644
--- a/open_issues/sync_but_still_unclean_filesystem.mdwn
+++ b/open_issues/sync_but_still_unclean_filesystem.mdwn
@@ -35,3 +35,5 @@ in all cases.
Apparently diskfs simply does not set filesystems as read-only:
<http://lists.gnu.org/archive/html/bug-hurd/2011-08/msg00024.html>.
+
+A patch was applied, and the sync issue does not seem to happen any more.
diff --git a/shortcuts.mdwn b/shortcuts.mdwn
index b978939e..fcd27847 100644
--- a/shortcuts.mdwn
+++ b/shortcuts.mdwn
@@ -25,8 +25,8 @@ This page controls what shortcut links the wiki supports.
* [[!shortcut name=debpts url="http://packages.qa.debian.org/%s"]]
* [[!shortcut name=debmsg url="http://lists.debian.org/msgid-search/%s"]]
* [[!shortcut name=debrt url="https://rt.debian.org/Ticket/Display.html?id=%s"]]
-* [[!shortcut name=debss url="http://snapshot.debian.net/package/%s"]]
- * Usage: `\[[!debss package]]`, `\[[!debss package#version]]`, or `\[[!debss package/version]]`. See http://snapshot.debian.net for details.
+* [[!shortcut name=debss url="http://snapshot.debian.org/package/%s/"]]
+ * Usage: `\[[!debss package]]` or `\[[!debss package/version]]`. See http://snapshot.debian.org for details.
* [[!shortcut name=debwiki url="http://wiki.debian.org/%s"]]
* [[!shortcut name=fdobug url="https://bugs.freedesktop.org/show_bug.cgi?id=%s" desc="freedesktop.org bug #%s"]]
* [[!shortcut name=fdolist url="http://lists.freedesktop.org/mailman/listinfo/%s" desc="%s@lists.freedesktop.org"]]