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

Reply via email to