Subject: bug#37312: test-symlink fails on "lustre" file system

From: Bruno Haible <[email-masked]>
Date: Sat, 07 Sep 2019 00:18:26 +0200

Thomas Oppe wrote:
> INSERTED errno=2
> test-symlink.h:71: assertion 'errno == EEXIST || errno == EINVAL' failed
> FAIL test-symlink (exit status: 134)

Thanks. I'm pushing this patch; it will fix the failure in this place.

2019-09-06  Bruno Haible  <[email-masked]>

	symlink tests: Avoid test failure on Linux with Lustre file system.
	Reported by Thomas C Oppe <[email-masked]>
	at <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=37312>.
	* tests/test-symlink.h (test_symlink): Accept errno value ENOENT.

diff --git a/tests/test-symlink.h b/tests/test-symlink.h
index c556347..8fd55c0 100644
--- a/tests/test-symlink.h
+++ b/tests/test-symlink.h
@@ -67,7 +67,8 @@ test_symlink (int (*func) (char const *, char const *), bool print)
   ASSERT (errno == EEXIST);
   errno = 0;
   ASSERT (func ("nowhere", BASE "dir/") == -1);
-  ASSERT (errno == EEXIST || errno == EINVAL);
+  ASSERT (errno == EEXIST || errno == EINVAL
+          || errno == ENOENT /* Lustre FS on Linux */);
   ASSERT (close (creat (BASE "file", 0600)) == 0);
   errno = 0;
   ASSERT (func ("nowhere", BASE "file") == -1);