Porting sbcl to DragonFly

vasily postnicov shamaz.mazum at gmail.com
Fri Mar 29 22:16:10 PDT 2013


Hello! I started porting SBCL to DragonFlyBSD. Previous (and only) attempt
was http://leaf.dragonflybsd.org/mailarchive/users/2006-05/msg00108.html as
far as I know. Google gives no more info on "sbcl on dragonfly" except this
link.

So I forked sbcl/sbcl repo from github a while ago and added support for
DragonFly on x86-64 platform (with multithreading support). I even build
stumpwm with sbcl and tried hunchentoot web server. Hunchentoot can handle
100 connections/second. This rate is almost its limit with
one-thread-per-connection model.

Link to repo:
https://github.com/shamazmazum/sbcl-dragonfly

There is a problem nevertheless: use of symbol-value-in-thread in
sb-concurrency tests causes sbcl to crash (not to ldb, but crash
completely!).

So I have some questions:
1. src/runtime/Config.x86-64-freebsd states that we must use 1:1 threading
not m:n threading and uses lthr for that purpose. It seems that there isn't
lthr in dragonfly, only lpthread is present. Should I use it? Is 1:1
threading supported? (It seems to work with lpthread anyway).
2. SBCL uses GCC TLS with (and only with) FreeBSD. I heard something about
lack of "native" TLS in FreeBSD. Is it true? Is TLS present on DragonFly?
3. Can I build and install x86 environment and virtual kernel on x86-64
machine? I prefer not to use VirtualBox if there is possibility to use
vkernel. This is needed to port SBCL to x86 too.

Sorry for possibly stupid questions, I am new both to DragonFlyBSD and SBCL
internals.

Any help of SBCL/Common Lisp hackers would be appreciated. I have really no
idea how to fix sb-concurrency right now.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dragonflybsd.org/pipermail/users/attachments/20130330/77c61e5d/attachment-0014.html>


More information about the Users mailing list