Custom Query (1030 matches)
Results (352 - 354 of 1030)
| Ticket | Resolution | Summary | Owner | Reporter |
|---|---|---|---|---|
| #1026 | notabug | ccl crashes when testing swank-crew | ||
| Description |
I recently modified the swank-client and swank-crew packages so that they load into ccl. When I execute (asdf:test-system 'swank-crew) I end up in the Clozure CL kernel debugger. Swank-crew uses threads and locks, so it's possible the code is triggering a Lisp system bug. To reproduce, check out the latest swank-client and swank-crew from their github repositories. Get all other dependencies from quicklisp. Finally, run (asdf:test-system 'swank-crew). Lisp version: Version 1.8-r15286M (LinuxX8664) The ARM version of ccl on my Raspberry Pi hangs when I run the swank-crew tests. The debugger does not appear. |
|||
| #1030 | fixed | Failure with conditional-store | ||
| Description |
(This is assuming ccl::conditional-store should work as a typical compare-and-swap, even though it's not exported.) The RUN function below causes an assertion failure within 2000 iterations on my Linux-x86 machine. An svref place has the same issue. I did not see a problem on Darwin. Removing the assertion (but keeping the conditional-store) results in a hang. Replacing that conditional-store (the second one) with setf also produces a hang. (defstruct stack
(head nil)
(lock nil))
(defun call-with-spin-lock (stack fn)
(loop :until (ccl::conditional-store
(stack-lock stack) nil t))
(unwind-protect
(funcall fn)
(assert (ccl::conditional-store
(stack-lock stack) t nil))))
(defmacro with-spin-lock ((stack) &body body)
`(call-with-spin-lock ,stack (lambda () ,@body)))
(defun push-stack (value stack)
(with-spin-lock (stack)
(push value (stack-head stack))))
(defun pop-stack (stack)
(with-spin-lock (stack)
(pop (stack-head stack))))
(defun test (thread-count)
(let ((stack (make-stack)))
(loop :repeat thread-count
:do (ccl:process-run-function "test" #'push-stack t stack))
(loop :repeat thread-count
:do (loop :until (pop-stack stack)))))
(defun run ()
(loop
(test 1)
(format t ".")))
|
|||
| #1038 | fixed | latin-1-unix not recognized as a valid encoding in -*- coding: -*- | ||
| Description |
;;; -*- coding: latin-1-unix -*- causes Unknown character encoding: :LATIN-1. That's because it expects LATIN1, but I'd also say that it shouldn't throw an error even if it's not recognized, just a warning. |
|||
