Clozure / ccl

Clozure Common Lisp
http://ccl.clozure.com
Apache License 2.0
857 stars 103 forks source link

Unhandled exception when running lparallel tests (1.13 LinuxARM32) #520

Open riktam opened 1 month ago

riktam commented 1 month ago

Hi, CCL either locks-up or crashes with the errors below when trying to run lparallel tests.

`Clozure Common Lisp Version 1.13 (v1.13) LinuxARM32

For more information about CCL, please see https://ccl.clozure.com.

CCL is free software. It is distributed under the terms of the Apache License, Version 2.0. ? (ql:quickload :lparallel-test) (lparallel-test:execute)To load "lparallel-test": Load 1 ASDF system: lparallel-test ; Loading "lparallel-test"

(:LPARALLEL-TEST) ? LPARALLEL-TEST::FORCE-CHAIN-TEST.......... LPARALLEL-TEST::END-KERNEL-TESTUnhandled exception 4 at 0x14a4a744, context->regs at #xa4e632d8 ? for help [3708] Clozure CL kernel debugger: :backtrace [3708] Clozure CL kernel debugger: current thread: tcr = 0x1ad7480, native thread ID = 0xf2f, interrupts enabled

(#xA4E635D0) #x14A4A700 : #<Function CALL-WITH-WORKER-CONTEXT #x14a4a7de> + 60 (#xA4E635E0) #x00018C0C : (subprimitive ret1valn) (#xA4E635F0) #x14A49494 : #<Function (:INTERNAL MAKE-WORKER-THREAD) #x14a494be> + 120 (#xA4E63620) #x14A49440 : #<Function (:INTERNAL MAKE-WORKER-THREAD) #x14a494be> + 36 (#xA4E63630) #x00018C0C : (subprimitive ret1valn) (#xA4E63640) #x14991720 : #<Function (:INTERNAL %BINDING-DEFAULT-SPECIALS-WRAPPER BINDING-DEFAULT-SPECIALS) #x14991746> + 612 (#xA4E63670) #x14991704 : #<Function (:INTERNAL %BINDING-DEFAULT-SPECIALS-WRAPPER BINDING-DEFAULT-SPECIALS) #x14991746> + 584 (#xA4E636B0) #x00018C0C : (subprimitive ret1valn) (#xA4E636C0) #x103CED28 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 412 (#xA4E63700) #x103CECB8 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 300 (#xA4E637A8) #x103CEBD8 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 76 (#xA4E637C8) #x00018C0C : (subprimitive ret1valn) (#xA4E637D8) #x103C29D0 : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 372 (#xA4E63808) #x103C2954 : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 248 (#xA4E63838) #x103C28FC : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 160 (#xA4E63A90) #x103ACDB4 : #<Function (:INTERNAL THREAD-MAKE-STARTUP-FUNCTION) #x14165bd6> + 216 (#xA4E63AA0) #x0001C548 : (subprimitive (null)) (#xA4E63AD0) #x0001C538 : (subprimitive (null)) (#xA4E63AE0) #x0001C5EC : (subprimitive start_lisp)

TCR = 0xa5201790, cstack area #xa5200980, native thread ID = 0xf30, interrupts disabled

(#xA58E32E8) #x1031947C : #<Function %WAIT-ON-SEMAPHORE-PTR #x141240b6> + 456 (#xA58E32F8) #x10319114 : #<Function %PROCESS-WAIT-ON-SEMAPHORE-PTR #x14123ffe> + 352 (#xA58E3328) #x10319088 : #<Function %PROCESS-WAIT-ON-SEMAPHORE-PTR #x14123ffe> + 212 (#xA58E3338) #x10318D70 : #<Function WAIT-ON-SEMAPHORE #x14123e9e> + 164 (#xA58E3348) #x1498D7B8 : #<Function CONDITION-WAIT #x1498d7ee> + 228 (#xA58E3378) #x1498D734 : #<Function CONDITION-WAIT #x1498d7ee> + 96 (#xA58E3388) #x14A13BEC : #<Function POP-BIASED-QUEUE/NO-LOCK #x14a13c06> + 104 (#xA58E3398) #x00018C0C : (subprimitive ret1valn) (#xA58E33A8) #x14A139EC : #<Function POP-BIASED-QUEUE #x14a13a4e> + 200 (#xA58E33D8) #x14A13970 : #<Function POP-BIASED-QUEUE #x14a13a4e> + 76 (#xA58E3400) #x14A4ACCC : #<Function WORKER-LOOP #x14a4ad7e> + 184 (#xA58E3430) #x14A4AC3C : #<Function WORKER-LOOP #x14a4ad7e> + 40 (#xA58E3440) #x00018C0C : (subprimitive ret1valn) (#xA58E3450) #x14A1A478 : #<Function %CALL-WITH-TASK-HANDLER #x14a1a4be> + 508 (#xA58E34D0) #x00018C0C : (subprimitive ret1valn) (#xA58E34E0) #x14A4A610 : #<Function (:INTERNAL CALL-WITH-WORKER-CONTEXT) #x14a4a66e> + 636 (#xA58E3558) #x14A4A504 : #<Function (:INTERNAL CALL-WITH-WORKER-CONTEXT) #x14a4a66e> + 368 (#xA58E3568) #x00018C0C : (subprimitive ret1valn) (#xA58E3578) #x1015B030 : #<Function FUNCALL #x1405a7fe> + 84 (#xA58E3590) #x00018C0C : (subprimitive ret1valn) (#xA58E35A0) #x14A4A7B8 : #<Function CALL-WITH-WORKER-CONTEXT #x14a4a7de> + 244 (#xA58E35D0) #x14A4A700 : #<Function CALL-WITH-WORKER-CONTEXT #x14a4a7de> + 60 (#xA58E35E0) #x00018C0C : (subprimitive ret1valn) (#xA58E35F0) #x14A49494 : #<Function (:INTERNAL MAKE-WORKER-THREAD) #x14a494be> + 120 (#xA58E3620) #x14A49440 : #<Function (:INTERNAL MAKE-WORKER-THREAD) #x14a494be> + 36 (#xA58E3630) #x00018C0C : (subprimitive ret1valn) (#xA58E3640) #x14991720 : #<Function (:INTERNAL %BINDING-DEFAULT-SPECIALS-WRAPPER BINDING-DEFAULT-SPECIALS) #x14991746> + 612 (#xA58E3670) #x14991704 : #<Function (:INTERNAL %BINDING-DEFAULT-SPECIALS-WRAPPER BINDING-DEFAULT-SPECIALS) #x14991746> + 584 (#xA58E36B0) #x00018C0C : (subprimitive ret1valn) (#xA58E36C0) #x103CED28 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 412 (#xA58E3700) #x103CECB8 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 300 (#xA58E37A8) #x103CEBD8 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 76 (#xA58E37C8) #x00018C0C : (subprimitive ret1valn) (#xA58E37D8) #x103C29D0 : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 372 (#xA58E3808) #x103C2954 : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 248 (#xA58E3838) #x103C28FC : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 160 (#xA58E3A90) #x103ACDB4 : #<Function (:INTERNAL THREAD-MAKE-STARTUP-FUNCTION) #x14165bd6> + 216 (#xA58E3AA0) #x0001C548 : (subprimitive (null)) (#xA58E3AD0) #x0001C538 : (subprimitive (null)) (#xA58E3AE0) #x0001C5EC : (subprimitive start_lisp)

TCR = 0xa5601bd0, cstack area #xa56011e8, native thread ID = 0xf31, interrupts disabled

(#xA60E32E8) #x1031947C : #<Function %WAIT-ON-SEMAPHORE-PTR #x141240b6> + 456 (#xA60E32F8) #x10319114 : #<Function %PROCESS-WAIT-ON-SEMAPHORE-PTR #x14123ffe> + 352 (#xA60E3328) #x10319088 : #<Function %PROCESS-WAIT-ON-SEMAPHORE-PTR #x14123ffe> + 212 (#xA60E3338) #x10318D70 : #<Function WAIT-ON-SEMAPHORE #x14123e9e> + 164 (#xA60E3348) #x1498D7B8 : #<Function CONDITION-WAIT #x1498d7ee> + 228 (#xA60E3378) #x1498D734 : #<Function CONDITION-WAIT #x1498d7ee> + 96 (#xA60E3388) #x14A13BEC : #<Function POP-BIASED-QUEUE/NO-LOCK #x14a13c06> + 104 (#xA60E3398) #x00018C0C : (subprimitive ret1valn) (#xA60E33A8) #x14A139EC : #<Function POP-BIASED-QUEUE #x14a13a4e> + 200 (#xA60E33D8) #x14A13970 : #<Function POP-BIASED-QUEUE #x14a13a4e> + 76 (#xA60E3400) #x14A4ACCC : #<Function WORKER-LOOP #x14a4ad7e> + 184 (#xA60E3430) #x14A4AC3C : #<Function WORKER-LOOP #x14a4ad7e> + 40 (#xA60E3440) #x00018C0C : (subprimitive ret1valn) (#xA60E3450) #x14A1A478 : #<Function %CALL-WITH-TASK-HANDLER #x14a1a4be> + 508 (#xA60E34D0) #x00018C0C : (subprimitive ret1valn) (#xA60E34E0) #x14A4A610 : #<Function (:INTERNAL CALL-WITH-WORKER-CONTEXT) #x14a4a66e> + 636 (#xA60E3558) #x14A4A504 : #<Function (:INTERNAL CALL-WITH-WORKER-CONTEXT) #x14a4a66e> + 368 (#xA60E3568) #x00018C0C : (subprimitive ret1valn) (#xA60E3578) #x1015B030 : #<Function FUNCALL #x1405a7fe> + 84 (#xA60E3590) #x00018C0C : (subprimitive ret1valn) (#xA60E35A0) #x14A4A7B8 : #<Function CALL-WITH-WORKER-CONTEXT #x14a4a7de> + 244 (#xA60E35D0) #x14A4A700 : #<Function CALL-WITH-WORKER-CONTEXT #x14a4a7de> + 60 (#xA60E35E0) #x00018C0C : (subprimitive ret1valn) (#xA60E35F0) #x14A49494 : #<Function (:INTERNAL MAKE-WORKER-THREAD) #x14a494be> + 120 (#xA60E3620) #x14A49440 : #<Function (:INTERNAL MAKE-WORKER-THREAD) #x14a494be> + 36 (#xA60E3630) #x00018C0C : (subprimitive ret1valn) (#xA60E3640) #x14991720 : #<Function (:INTERNAL %BINDING-DEFAULT-SPECIALS-WRAPPER BINDING-DEFAULT-SPECIALS) #x14991746> + 612 (#xA60E3670) #x14991704 : #<Function (:INTERNAL %BINDING-DEFAULT-SPECIALS-WRAPPER BINDING-DEFAULT-SPECIALS) #x14991746> + 584 (#xA60E36B0) #x00018C0C : (subprimitive ret1valn) (#xA60E36C0) #x103CED28 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 412 (#xA60E3700) #x103CECB8 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 300 (#xA60E37A8) #x103CEBD8 : #<Function RUN-PROCESS-INITIAL-FORM #x14179f86> + 76 (#xA60E37C8) #x00018C0C : (subprimitive ret1valn) (#xA60E37D8) #x103C29D0 : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 372 (#xA60E3808) #x103C2954 : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 248 (#xA60E3838) #x103C28FC : #<Function (:INTERNAL (%PROCESS-PRESET-INTERNAL (PROCESS))) #x141707fe> + 160 (#xA60E3A90) #x103ACDB4 : #<Function (:INTERNAL THREAD-MAKE-STARTUP-FUNCTION) #x14165bd6> + 216 (#xA60E3AA0) #x0001C548 : (subprimitive (null)) (#xA60E3AD0) #x0001C538 : (subprimitive (null)) (#xA60E3AE0) #x0001C5EC : (subprimitive start_lisp)

TCR = 0xa5a00478, cstack area #xa5a017c8, native thread ID = 0xf32, interrupts disabled

Unhandled exception 11 at 0x24a18, context->regs at #xa4e62cc8 Exception occurred while executing foreign code at lisp_frame_p + 0 received signal 11; faulting address: (nil) address not mapped to object ? for help [3708] Clozure CL kernel debugger: [3708] Clozure CL kernel debugger: [3708] Clozure CL kernel debugger: Killed`

sspiresx commented 1 month ago

Wonder if this is related to the infamous bug #1257 which was never fixed? https://trac.clozure.com/ccl/ticket/1257 and/or https://github.com/jetmonk/openmcl-thread-test

xrme commented 1 month ago

I would guess that this is indeed a manifestation of some kind of ARM threading bug that we've had for a long time. See also #428.