sb-concurrency self test failing sometimes: FLOATING-POINT-INVALID-OPERATION
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
I build SBCL x86 under x86-64.
Sometimes (one out of ten builds maybe?) the
sb-concurrency self test fails.
The error is:
arithmetic error FLOATING-
See below for the backtrace.
Seen with version 1.0.50.54 and 1.0.51.28.
This is Linux, kernel 3.0.3 with preemption
and Kolivas' BFS Scheduler version 406,
on a triple-core machine.
; compiling file "/home/
; compiling (IN-PACKAGE :SB-CONCURRENCY
; compiling (DEFTEST MAILBOX-TRIVIA.1 ...)
; compiling (DEFTEST MAILBOX-TRIVIA.2 ...)
; compiling (DEFTEST MAILBOX-TRIVIA.3 ...)
; compiling (DEFSTRUCT COUNTER ...)
; compiling (DEFUN RECEIVER-
; compiling (DEFUN TEST-MAILBOX-
; compiling (DEFTEST MAILBOX.
; compiling (DEFTEST MAILBOX.
; compiling (DEFTEST MAILBOX.
; compiling (DEFTEST MAILBOX.
; compiling (DEFTEST MAILBOX.
; /home/sbcl/
; compilation finished in 0:00:00.065
Doing 16 pending tests of 16 tests total.
SB-CONCURRENCY
SB-CONCURRENCY
SB-CONCURRENCY
SB-CONCURRENCY
SB-CONCURRENCY
SB-CONCURRENCY
SB-CONCURRENCY
SB-CONCURRENCY
unhandled FLOATING-
arithmetic error FLOATING-
0: (SB-DEBUG:
1: (BACKTRACE 128 #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDERR* {90D6DE9}>)
2: (SB-DEBUG:
#<FLOATING-
#<unavailable argument>)
3: (SB-DEBUG::RUN-HOOK
*INVOKE-
#<FLOATING-
4: (INVOKE-DEBUGGER #<FLOATING-
5: (ERROR FLOATING-
6: (SB-VM:
#<unavailable argument>
#.(
#<unavailable argument>)
7: ((FLET #:WITHOUT-
8: ((FLET SB-THREAD::EXEC))
9: ((FLET #:WITHOUT-
10: (SB-SYS:
#<CLOSURE (FLET SB-UNIX:
11: (SB-SYS:
#<CLOSURE (FLET SB-UNIX:
12: ((FLET SB-UNIX:
8
#.
#.
13: ("foreign function: call_into_lisp")
14: ("foreign function: funcall3")
15: ("foreign function: interrupt_
16: ("foreign function: interrupt_
17: ((LAMBDA ()))
18: (SB-C::
19: (GET-INTERNAL-
20: (SB-SYS:
21: (SB-THREAD:
#<unavailable argument>
#<unavailable argument>
#<unavailable argument>
#<unavailable argument>)
22: ((FLET #:WITHOUT-
23: (SB-THREAD:
#S(
:NAME "Mailbox Semaphore"
:%COUNT 1
:WAITCOUNT 4
:MUTEX #<SB-THREAD:MUTEX
:QUEUE #<SB-THREAD:
24: ((FLET #:WITHOUT-
25: (SB-CONCURRENCY
#<
26: ((LAMBDA ()))
27: ((FLET #:WITHOUT-
28: ((FLET SB-THREAD:
29: ((FLET #:WITHOUT-
30: (SB-THREAD:
#<CLOSURE (FLET SB-THREAD:
#<
owner: #<SB-THREAD:THREAD "RECV-MSG-16" RUNNING {B99C7E1}>>
#<
T)
31: (SB-THREAD:
32: ("foreign function: call_into_lisp")
33: ("foreign function: funcall0")
34: ("foreign function: new_thread_
35: ("foreign function: #x555A7E72")
unhandled condition in --disable-debugger mode, quitting
unhandled FLOATING-
arithmetic error FLOATING-
unhandled FLOATING-
arithmetic error FLOATING-
0:
0: (SB-DEBUG:
1:
1: (BACKTRACE 128 #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDERR* {90D6DE9}>)
2: (BACKTRACE 128 #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDERR* {90D6DE9}
2: (BACKTRACE 128 #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDERR* {90D6DE9}
: #<FLOATING-
#<unavailable argument>)
3: (SB-DEBUG::RUN-HOOK
*INVOKE-
#<FLOATING-
5: (ERROR FLOATING-
6:
3: (SB-VM:
#<unavailable argument>
#.(
#<unavailable argument>)
7: ((FLET #:WITHOUT-
8: ((FLET SB-THREAD::EXEC))
9: ((FLET #:WITHOUT-
10: (SB-SYS:
#<CLOSURE (FLET SB-UNIX:
11: (SB-SYS:
#<CLOSURE (FLET SB-UNIX:
12: ((FLET SB-UNIX:
8
#.
#.
13: ("foreign function: call_into_lisp")
14: ("foreign function: funcall3")
15: ("foreign function: interrupt_
16: ("foreign function: interrupt_
17: ((LAMBDA ()))
18: ((FLET #:WITHOUT-
19: ((FLET SB-THREAD:
20: ((FLET #:WITHOUT-
21: (SB-THREAD:
#<CLOSURE (FLET SB-THREAD:
#<
owner: #<SB-THREAD:THREAD "RECV-PEND-MSGS-2" RUNNING {AE50B31}>>
#<
T)
22: (SB-THREAD:
23: ("foreign function: call_into_lisp")
24: ("foreign function: funcall0")
25: ("foreign function: new_thread_
26: ("foreign function: #x555A7E72")
unhandled condition in --disable-debugger mode, quitting
(SB-DEBUG::RUN-HOOK
*INVOKE-
#<FLOATING-
4: (INVOKE-DEBUGGER #<FLOATING-
5: (ERROR FLOATING-
6: (SB-VM:
#<unavailable argument>
#.(
#<unavailable argument>)
7: ((FLET #:WITHOUT-
8: ((FLET SB-THREAD::EXEC))
9: ((FLET #:WITHOUT-
10: (SB-SYS:
#<CLOSURE (FLET SB-UNIX:
11: (SB-SYS:
#<CLOSURE (FLET SB-UNIX:
12: ((FLET SB-UNIX:
8
#.
#.
13: ("foreign function: call_into_lisp")
14: ("foreign function: funcall3")
15: ("foreign function: interrupt_
16: ("foreign function: interrupt_
17: (SB-THREAD:
#<unavailable argument>
#<unavailable argument>
#<unavailable argument>
#<unavailable argument>)
18: ((FLET #:WITHOUT-
19: (SB-THREAD:
#S(
:NAME "Mailbox Semaphore"
:%COUNT 0
:WAITCOUNT 49
:MUTEX #<SB-THREAD:MUTEX
:QUEUE #<SB-THREAD:
1)
20: ((FLET #:WITHOUT-
21: (SB-CONCURRENCY
#<
22: ((LAMBDA ()))
23: ((FLET #:WITHOUT-
24: ((FLET SB-THREAD:
25: ((FLET #:WITHOUT-
26: (SB-THREAD:
#<CLOSURE (FLET SB-THREAD:
#<
owner: #<SB-THREAD:THREAD "RECV-MSG-
#<
T)
27: (SB-THREAD:
28: ("foreign function: call_into_lisp")
29: ("foreign function: funcall0")
30: ("foreign function: new_thread_
31: ("foreign function: #x555A7E72")
unhandled condition in --disable-debugger mode, quitting
SB-CONCURRENCY
Test SB-CONCURRENCY-
Form: (SB-CONCURRENCY
Expected values: (:RECEIVED . 100000)
Actual values: (:RECEIVED . 100000)
SB-CONCURRENCY
1 out of 16 total tests failed:
SB-CONCURREN
ASDF:TEST-OP failed
0: (SB-DEBUG:
1: (BACKTRACE 128 #<SYNONYM-STREAM :SYMBOL SB-SYS:*STDERR* {90D6DE9}>)
2: (SB-DEBUG:
#<SIMPLE-ERROR "~S failed" {B2283A9}>
#<unavailable argument>)
3: (SB-DEBUG::RUN-HOOK
*INVOKE-
#<SIMPLE-ERROR "~S failed" {B2283A9}>)
4: (INVOKE-DEBUGGER #<SIMPLE-ERROR "~S failed" {B2283A9}>)
5: (ERROR "~S failed" ASDF:TEST-OP)
6: ((SB-PCL:
(ASDF:TEST-OP (EQL (ASDF:FIND-SYSTEM :SB-CONCURRENCY
#<unavailable argument>
#<unavailable argument>
#<unavailable argument>
#<unavailable argument>)
7: ((SB-PCL::EMF ASDF:PERFORM)
#<unavailable argument>
#<unavailable argument>
#<ASDF:TEST-OP NIL {B3973D1}>
#<ASDF:SYSTEM "sb-concurrency
8: ((LAMBDA ()))
9: ((FLET SB-C::WITH-IT))
10: ((SB-PCL:
#<unused argument>
#<unused argument>
((
. #<ASDF:
(
. #<ASDF:
(
. #<ASDF:
(
. #<ASDF:
(
. #<ASDF:MODULE "sb-concurrency
(
11: ((LAMBDA ()))
12: ((SB-PCL:
#<unused argument>
#<unused argument>
ASDF:TEST-OP
:SB-
13: ((SB-PCL::EMF ASDF:OPERATE)
#<unused argument>
#<unused argument>
ASDF:TEST-OP
:SB-
14: ((SB-PCL::EMF ASDF:PERFORM)
#<unavailable argument>
#<unavailable argument>
#<ASDF:TEST-OP NIL {B401C49}>
#<ASDF:SYSTEM "sb-concurrency">)
15: ((LAMBDA ()))
16: ((FLET SB-THREAD:
17: ((FLET #:WITHOUT-
18: (SB-THREAD:
#<CLOSURE (FLET SB-THREAD:
#<
owner: #<SB-THREAD:THREAD "initial thread" RUNNING {AAA5129}>>)
19: ((FLET SB-C::WITH-IT))
20: ((SB-PCL:
#<unused argument>
#<unused argument>
((
. #<ASDF:
(
. #<ASDF:
(
. #<ASDF:
(
21: ((LAMBDA ()))
22: (ASDF::
23: ((SB-PCL:
#<unused argument>
#<unused argument>
ASDF:TEST-OP
:SB-
24: ((SB-PCL::EMF ASDF:OPERATE)
#<unused argument>
#<unused argument>
ASDF:TEST-OP
:SB-
25: (SB-INT:
(ASDF:OPERATE 'ASDF:TEST-OP :SB-CONCURRENCY)
#<
26: (EVAL (ASDF:OPERATE 'ASDF:TEST-OP :SB-CONCURRENCY))
27: (INTERACTIVE-EVAL (ASDF:OPERATE 'ASDF:TEST-OP :SB-CONCURRENCY) :EVAL NIL)
28: (SB-IMPL::REPL-FUN NIL)
29: ((LAMBDA ()))
30: (SB-IMPL:
31: (SB-IMPL:
32: (SB-IMPL:
33: ((FLET #:WITHOUT-
34: ((LABELS SB-IMPL:
unhandled condition in --disable-debugger mode, quitting
;
; compilation unit aborted
; caught 2 fatal ERROR conditions
make: *** [test] Error 1
make: Leaving directory `/home/
Changed in sbcl: | |
status: | Incomplete → Fix Released |
I'm virtually certain this is a kernel issue.