ports/154050: [patch] lang/sbcl: disable all threaded mailbox tests in sb-concurrency
Anonymous
swell.k at gmail.com
Sun Jan 16 03:10:07 UTC 2011
>Number: 154050
>Category: ports
>Synopsis: [patch] lang/sbcl: disable all threaded mailbox tests in sb-concurrency
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sun Jan 16 03:10:06 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Anonymous
>Release: FreeBSD 9.0-CURRENT amd64
>Organization:
>Environment:
/head at r217454M
THREADS option enabled
>Description:
Since r216641 even more mailbox tests fail, actually all with same error.
>How-To-Repeat:
The build fails after all contrib tests are performed
$ make
[...]
; /usr/ports/lang/sbcl/work/sbcl-1.0.43/contrib/sb-concurrency/tests/ASDF-TMP-test-mailbox.fasl written
; compilation finished in 0:00:00.074
Doing 15 pending tests of 15 tests total.
[...]
SB-CONCURRENCY-TEST::MAILBOX.SINGLE-PRODUCER-MULTIPLE-CONSUMERS
FFFaattaall eerrrroorr ''thread was already on queue.F' aatta ll ienrer o2r2 2' thread was already on queue.i'n afti llei n/usr/src/lib/libthr/thread/thr_cond.ce (2e2r2r nion =f i0l)e
/usr/src/lib/libthr/thread/thr_cond.c (errno = 0)
thread was already on queue.' at line 222 in file /usr/src/lib/libthr/thread/thr_cond.c (errno = 0)
fatal error encountered in SBCL pid 96002(tid 34612012032):
SIGABRT received.
[...]
; compiling (DEFUN ENABLE-CALL-COUNTING-FOR-FUNCTION ...)
; compiling (DEFUN TEST-0 ...)
; compiling (DEFUN TEST ...)
; compiling (PROVIDE (QUOTE SB-SPROF))
; SYS:CONTRIB;SB-SPROF;SB-SPROF.FASL.NEWEST written
; compilation finished in 0:00:00.749
* true
gmake: Leaving directory `/usr/ports/lang/sbcl/work/sbcl-1.0.43/contrib/sb-sprof'
WARNING! Some of the contrib modules did not build successfully or pass
their self-tests. Failed contribs:"
sb-concurrency
188.39 real 31.33 user 4.25 sys
*** Error code 1
Now, here is a dumb shortcut for sb-concurrency tests
$ make install clean # pre r216641 or with below patch applied
$ make patch
$ cd $(make -V WRKSRC)
$ echo "
(require 'asdf)
(require 'sb-concurrency \"contrib/sb-concurrency/sb-concurrency.asd\")
(asdf:operate 'asdf:test-op 'sb-concurrency)
" | XDG_CACHE_HOME=/tmp sbcl --noinform --disable-debugger \
--no-sysinit --no-userinit
Let's use it on libthr from r216640.
*
("ASDF")
*
NIL
*
; loading system definition from /usr/local/lib/sbcl/sb-rt/sb-rt.asd into
; #<PACKAGE "ASDF0">
; registering #<SYSTEM SB-RT> as SB-RT
Doing 15 pending tests of 15 tests total.
SB-CONCURRENCY-TEST::QUEUE.1 SB-CONCURRENCY-TEST::QUEUE.2
SB-CONCURRENCY-TEST::QUEUE.3 SB-CONCURRENCY-TEST::QUEUE.4
SB-CONCURRENCY-TEST::QUEUE.5 SB-CONCURRENCY-TEST::QUEUE.T.1
SB-CONCURRENCY-TEST::QUEUE.T.2 SB-CONCURRENCY-TEST::QUEUE.T.3
SB-CONCURRENCY-TEST::MAILBOX-TRIVIA.1 SB-CONCURRENCY-TEST::MAILBOX-TRIVIA.2
SB-CONCURRENCY-TEST::MAILBOX-TRIVIA.3
SB-CONCURRENCY-TEST::MAILBOX.SINGLE-PRODUCER-SINGLE-CONSUMER
SB-CONCURRENCY-TEST::MAILBOX.SINGLE-PRODUCER-MULTIPLE-CONSUMERS
SB-CONCURRENCY-TEST::MAILBOX.MULTIPLE-PRODUCERS-SINGLE-CONSUMER
SB-CONCURRENCY-TEST::MAILBOX.MULTIPLE-PRODUCERS-MULTIPLE-CONSUMERS
No tests failed.
#<ASDF:TEST-OP NIL {1003227E41}>
*
And r216642 already fails (r216641 was broken - missing thr_sleepq.c)
*
("ASDF")
*
NIL
*
; loading system definition from /usr/local/lib/sbcl/sb-rt/sb-rt.asd into
; #<PACKAGE "ASDF0">
; registering #<SYSTEM SB-RT> as SB-RT
Doing 15 pending tests of 15 tests total.
SB-CONCURRENCY-TEST::QUEUE.1 SB-CONCURRENCY-TEST::QUEUE.2
SB-CONCURRENCY-TEST::QUEUE.3 SB-CONCURRENCY-TEST::QUEUE.4
SB-CONCURRENCY-TEST::QUEUE.5 SB-CONCURRENCY-TEST::QUEUE.T.1
SB-CONCURRENCY-TEST::QUEUE.T.2 SB-CONCURRENCY-TEST::QUEUE.T.3
SB-CONCURRENCY-TEST::MAILBOX-TRIVIA.1 SB-CONCURRENCY-TEST::MAILBOX-TRIVIA.2
SB-CONCURRENCY-TEST::MAILBOX-TRIVIA.3
SB-CONCURRENCY-TEST::MAILBOX.SINGLE-PRODUCER-SINGLE-CONSUMER
SB-CONCURRENCY-TEST::MAILBOX.SINGLE-PRODUCER-MULTIPLE-CONSUMERS
Fatal error 'thread was already on queue.' at line 222 in file /usr/src/lib/libthr/thread/thr_cond.c (errno = 0)
fatal error encounteredF in SBCL pid 26799Fa(tid 34418383872)at:
taSIGABRT received.
>Fix:
--- a.diff begins here ---
Index: lang/sbcl/files/patch-disable-failing-tests
===================================================================
RCS file: /a/.cvsup/ports/lang/sbcl/files/patch-disable-failing-tests,v
retrieving revision 1.1
diff -u -p -r1.1 patch-disable-failing-tests
--- lang/sbcl/files/patch-disable-failing-tests 15 Oct 2010 23:04:07 -0000 1.1
+++ lang/sbcl/files/patch-disable-failing-tests 15 Jan 2011 06:32:51 -0000
@@ -10,11 +10,12 @@
(unknown-protocol ()
--- contrib/sb-concurrency/tests/test-mailbox.lisp~
+++ contrib/sb-concurrency/tests/test-mailbox.lisp
-@@ -181,6 +185,7 @@
- (:errors . 0)
- (:timeouts . 0))
+@@ -40,7 +40,7 @@
-+#-(and sb-thread freebsd)
- (deftest mailbox.interrupts-safety.1
- (multiple-value-bind (received garbage errors timeouts)
- (test-mailbox-producers-consumers
+ ;;; FIXME: Several tests disabled on Darwin due to hangs. Something not right
+ ;;; with mailboxes -- or possibly semaphores -- there.
+-#+(and sb-thread (not darwin))
++#+(and sb-thread (not (or darwin freebsd)))
+ (progn
+
+ ;; Dummy struct for ATOMIC-INCF to work.
--- a.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list