There was an issue with rlock-tweak.c, revealed by the tdb testsuite: Index: hurd-debian/libfshelp/rlock-tweak.c =================================================================== --- hurd-debian.orig/libfshelp/rlock-tweak.c +++ hurd-debian/libfshelp/rlock-tweak.c @@ -312,10 +312,8 @@ fshelp_rlock_tweak (struct rlock_box *bo return 0; } } - else if (l->start < start - && (len == 0 - || (start <= l->start + l->len - && start + len > l->start + l->len))) + else if (l->start < start && start <= l->start + l->len + && (len == 0 || start + len > l->start + l->len)) /* Our start falls within the locked region or exactly one byte after it and our end falls beyond it. We know that we cannot consume the entire region. */
Apart from that it seemed to work just fine. I'll let the glibc testsuite run this night to be sure before committing. Samuel