[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#855027: guile-2.0: FTBFS[kfreebsd-amd64]: 00-repl-server.test "Resource temporarily unavailable"



Package: src:guile-2.0
Version: 2.0.13+1-2
Severity: important
User: debian-bsd@lists.debian.org
Usertags: kfreebsd

Hello,

guile-2.0 FTBFS on kfreebsd-amd64, since the addition of
0003-tests-Avoid-race-condition-in-REPL-server-test.patch in 2.0.13+1-4

https://buildd.debian.org/status/fetch.php?pkg=guile-2.0&arch=kfreebsd-amd64&ver=2.0.13%2B1-4&stamp=1481333083&raw=0
| FAIL: 00-repl-server.test: repl-server: simple expression - arguments:
| (expected-value "scheme@(repl-server)> $1 = 42\n" actual-value:
| scheme@(repl-server)> While reading expression:
| ERROR: In procedure fport_fill_input: Resource temporarily unavailable
| scheme@(repl-server)> While reading expression:
| ERROR: In procedure fport_fill_input: Resource temporarily unavailable
| scheme@(repl-server)> While reading expression:
| ERROR: In procedure fport_fill_input: Resource temporarily unavailable

I think the newly-added call to select() is returning EAGAIN:

+
+      ;; Wait until 'repl-reader' in boot-9 has written the prompt.
+      ;; Otherwise, if we write too quickly, 'repl-reader' checks for
+      ;; 'char-ready?' and doesn't print the prompt.
+      (match (select (list socket) '() (list socket) 3)
+        (((_) () ())
+         (display "(+ 40 2)\n(quit)\n" socket)
+         (read-string socket)))))

But I think that is quite normal, at least on kfreebsd.  In
http://man7.org/linux/man-pages/man2/select.2.html it is stated that
"Portable programs may wish to check for EAGAIN and loop, just as with
EINTR."

I'm unfortunately not a Guile programmer so I wouldn't know how to do
that here.

I chose severity 'important' because, although kfreebsd is not a release
architecture, src:guile-2.0 is a build-dependency of some of the
build-essential packages in sid.

Thanks!

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: kfreebsd-amd64 (x86_64)

Kernel: kFreeBSD 10.1-0-amd64
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)


Reply to: