sbcl Log


Commit Date  
[69cbd7] (dan_native_threads_3_branch) by Daniel Barlow Daniel Barlow

0.7.13.5.thread.10
Just in case anyone was in any doubt about the amount of
workingness in sbcl threads these days: this version runs
McCLIM and Closure (albeit slowly)

asdf contrib: fix (MAX 1 NIL) problem (needs patch in HEAD
and asdf upstream too)

DEBUG-PROMPT now blocks waiting for *session-lock*

REPL-PROMPT-FUN args restored to be the same as in HEAD

RESUME-STOPPED-THREAD allows the selection of the next
thread to run

PCL fix that we appear to have missed from a previous commit

Commented out lots of debugging printf in the runtime

2003-03-14 14:41:37 Tree
[433445] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.9
Make TRACE write its messages in one go, to make it more
useful for debugging interactions between threads

GET-MUTEX now contains an assertion that we don't already
have the mutex

Don't make the failure of PTRACE_GETREGS kill the whole
instance. Not that thenew strategy is that much better
either, actually ...

Be slightly more careful about the order in which we remove
dead threads and do GC: i.e. do the GC afterwards.

2003-03-12 04:57:54 Tree
[4c4f00] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.8
condition-wait should always reacquire the mutex before
returning, even if it was interrupted

Add CLONE_FILES to the new thread creation call: see if
sharing file descriptors makes it any easier to cope with
fd-streams (it doesn't obviously, but it might)

Export some more useful stuff from SB-THREAD

2003-03-11 19:34:50 Tree
[4350d9] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.7
Condition variables, apparently working support for.

Lots of refactoring in thread.c and target-thread.lisp to
reuse the existing putting-threads-on-queues code for both
condition variables and mutexes. Happily also this lets us
punt some of the OAOOM struct definitions as we now only need
struct mutex in Lisp

2003-03-11 03:23:36 Tree
[59b917] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.6
Reuse ldt slots that had been for dead threads.

Removed "ldt entry %d" debug spew.

2003-03-10 01:23:15 Tree
[66dd8b] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.5

Apply patch from Gerd Moellmann to remove cacheing of GF
caches. Primarily we're doing this to remove several
WITHOUT-INTERRUPTSs in PCL code.

http://entomotomy.cliki.net/pcl-gf-cache-cacheing-not-needed

Replaced remaining (two) WITHOUT-INTERRUPTSs with WITH-PCL-LOCK
- a new macro that spinlocks around the approriate section. I
suspect this is not actually sufficient for the code sections
it delimits, though :-(

2003-03-10 00:06:58 Tree
[57f497] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.4
get_spinlock() actually works now. Added an assertion in
gc_find_freeish_pages to test this

McCLIM runs - at least, the address book demo runs. At least,
the address book demo executes, but "walk" might be a better
word than "run" to describe the manner in which it executes

Export some useful functions from SB-THREAD

New condition TIMEOUT (inherits from ERROR) is signalled by
the default SIGALRM handler

Threads queued on a lock are now woken with SIGCONT, not
SIGALRM

GET-MUTEX can optionally not wait. If you don't want it to
wait, it's important that you check the return value

New WITH-MUTEX macro

Borrowed some code from CMUCL for UNIX-{SET,GET}ITIMER,
including magic constants that would more appropriately be
grovelled from C headers

2003-03-04 02:52:21 Tree
[b16281] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.4

More thread-safety fixes: smoke testing with araneida and
apachebench

*gc-inhibit* is now a fixnum. Created new atomic-{inc,dec}f
macros and rewrote without-gcing to behave as described

When starting a new thread, rebind *descriptor-handlers* and
*available-buffers*, avoid confusing fd-streams quite as much

Renamed fast-symbol-value-xadd to fast-symbol-global-value-xadd
to indicate more clearly it won't work with tls values

Various changes to stop-for-gc logic to cope with stopping
pseudo-atomic threads in a way that doesn't kill us. Most
notably, when we resume a pa thread we need to let it run
past (and handle) the SIGTRAP (or alternatively, remember
that it had happened and arrange for PTRACE_DETACH to
pass the signal on. That might be a better approach)

Dummy SIGALRM handler installed in all threads, just so
nothing bad happens when we signal a thread that's supposed to
be stopped but has been woken up by GC

Sleeping threads may get woken by the garbage collector and
therefore be in a state of both running and queued.
add_thread_to_queue should check and avoid putting thread on
the same queue multiple times

sb-bsd-sockets should be wrapping its alien-data-in-lispspace
accessors in without-gcing

2003-03-01 10:02:10 Tree
[b23786] by Daniel Barlow Daniel Barlow

[0.7.13.5.thread.2
Forgot to incf version.lisp-expr at the time ...
Restore gencgc fix that got lost in the merge

Make the parent thread exit with the exit status of the last
child to quit. This makes sh run-tests.sh work ]

0.7.13.5.thread.3
get_spinlock() actually works now. Added an assertion in
gc_find_freeish_pages to test this

2003-02-27 23:16:12 Tree
[0a3067] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.2
Restore gencgc fix that got lost in the merge

Make the parent thread exit with the exit status of the last
child to quit. This makes sh run-tests.sh work

2003-02-27 09:44:16 Tree
[5d4902] by Daniel Barlow Daniel Barlow

0.7.13.5.thread.1
Yay, back on the branch again. This is the
dan_native_threads_3 branch, and this initial commit is
essentially the remaining bits of the native_threads_2_branch
that weren't committed on the HEAD in 0.7.13.[1235]

2003-02-27 03:37:13 Tree
2003-02-27 02:49:04 Tree
[3bb2fb] by Daniel Barlow Daniel Barlow

0.7.13.5
Committed patch for gencgc refactoring based on work done
on threads branch.

... to make header file management a lot simpler, and allow
the use of interesting typedefs in genesis :C-TYPE slot
options, we split runtime.h into lots of smaller files that
can be (semi-)independently included.

... all GC and GCish functions now have the same interface,
so no need for (eq *internal-gc* #'collect-garbage) test in
SUB-GC

... current_region_end_addr and current_region_free_pointer
go away, eliminating potential for weird bugs when they're
not synchronized properly. Yay OAOO

... disabled (actually, removed) inline allocation, as it
depended on old current_region_* (see above) and appears
to make not a lot of actual difference to run times anyway

pseudo-atomic support is now always compiled in. I can see
no good reason for not having it

... much code in alloc() collapsed. Also alloc() no longer
attempts to drop its PA and do a collection in the middle of
allocation - instead it uses the existing maybe_gc flag to
indicate that collection should happen when the allocation is
done. Possibly this has bad effects when trying to allocate
an object bigger than available dynamic space, but that would
fit if a GC were done first. Given the (complete lack of)
error handling for out-of-memory conditions in this and all
previous SBCL versions, it would be a foolish programmer who
was depending on this anyway, though.

2003-02-27 00:49:57 Tree
[f294da] by Alexey Dejneka Alexey Dejneka

0.7.13.4:
Fix the bug 239.

2003-02-26 04:52:08 Tree
[d68f3f] by Daniel Barlow Daniel Barlow

0.7.13.3
RUN-PROGRAM fixes: make the :pty option actually work (even on
other-than-BSD systems) and run-program.lisp rather shorter in
the process.

2003-02-26 02:28:35 Tree
[6daed9] by Daniel Barlow Daniel Barlow

0.7.13.2
Remove all #+mp/#-mp conditionals, and rid the world of the
SB!MP package

2003-02-26 02:18:45 Tree
[31fb28] by Daniel Barlow Daniel Barlow

0.7.13.1
Small refactor to OOAO-ize find-restart-or-lose

2003-02-26 02:16:27 Tree
[7045ac] (sbcl_0_7_13) by William Harold Newman William Harold Newman

0.7.13:
release, tagged as sbcl_0_7_13

2003-02-26 01:24:19 Tree
[fcdf52] by William Harold Newman William Harold Newman

0.7.12.59:
new bug reports from Antonio Martinez

2003-02-25 18:59:03 Tree
[8dd2ba] by Daniel Barlow Daniel Barlow

0.7.12.58
Revert accidental bsd-sockets/solaris breakage

2003-02-24 06:34:17 Tree
[ca9a15] by Daniel Barlow Daniel Barlow

0.7.12.57
Add :force t to asdf-dependent contrib modules

Change install.sh to rename old binary/core files instead of
copying them - does not kill running SBCL programs in such a
gruseome way

Create $SBCL_HOME/site-systems in install.sh

... OK, that's IT, I am DONE for 0.7.13

2003-02-24 04:33:00 Tree
[12348c] by William Harold Newman William Harold Newman

0.7.12.56:
merged Matthew Danish patch (sbcl-devel Feb 18) fixing eval
order and ONCE-ONLYness for function args (my
contribution to the "what have we here?" theme of
the intercontinental party we're holding to celebrate
today's nonrelease:-)

2003-02-23 22:50:01 Tree
[24e6aa] by William Harold Newman William Harold Newman

0.7.12.55:
doc fixes, some from #lisp...
...emu pointed out where arg order stuff for :TEST functions
is specified.
...dan-b found a much-less-hackish !ENTITY for the manual.

2003-02-23 16:14:46 Tree
[2066cf] by Christophe Rhodes Christophe Rhodes

0.7.12.54:
Eleventh hour accommodation to Solaris sh(1)
... export FOO=bar -> FOO=bar; export FOO
... more test -e -> test -f
... b=${1:?foo bar} -> b=${1:?"foo bar"}
... yay for portable shell programmes.

2003-02-23 16:07:33 Tree
[bb7c5b] by Christophe Rhodes Christophe Rhodes

0.7.12.53:
Fix SunOS build as per sbcl-devel 2003-03-22
... remove last bashism in build scripts;
... allow building of foreign loading on SunOS;
... frob sb-bsd-sockets tests so that they pass on SunOS even in the
absence of a /dev/log socket.

2003-02-22 23:00:18 Tree
Older >