From: William H. N. <wn...@us...> - 2004-04-19 03:41:51
|
Update of /cvsroot/sbcl/sbcl/src/runtime In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9489/src/runtime Modified Files: x86-assem.S validate.c undefineds.h thread.c bsd-os.h bsd-os.c Log Message: 0.8.9.49: merged Scott Parish's patch for OpenBSD, with a few tweaks... ...reduced space sizes to work around ulimit problems (as a quick hack, probably not the ideal long-term solution) ...fiddling to work around collisions with NetBSD patch; ah, the joys of working on living, squirmy code ...I think s/LISP_FEATURE_LINUX/LISP_FEATURE_SB_THREAD/ on create_thread() is correct; it was motivated by the way that now new_thread_trampoline() is defined only when LISP_FEATURE_SB_THREAD. minor issue encountered while going through xc: clean.sh should blow away src/runtime/genesis/. Index: x86-assem.S =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/x86-assem.S,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- x86-assem.S 8 Apr 2004 13:26:04 -0000 1.15 +++ x86-assem.S 19 Apr 2004 03:41:40 -0000 1.16 @@ -22,16 +22,29 @@ #include "genesis/symbol.h" #include "genesis/thread.h" -/* Minimize conditionalization for different OS naming schemes. */ -#if defined __linux__ || defined __FreeBSD__ || defined __NetBSD__ /* (but *not* OpenBSD) */ +/* Minimize conditionalization for different OS naming schemes. + * + * (As of sbcl-0.8.10, this seems no longer to be much of an issue, + * since everyone has converged on ELF. If this generality really + * turns out not to matter, perhaps it's just clutter we could get + * rid of? -- WHN 2004-04-18) + */ +#if defined __linux__ || defined __FreeBSD__ || defined __NetBSD__ || defined __OpenBSD__ #define GNAME(var) var #else #define GNAME(var) _##var #endif /* Get the right type of alignment. Linux, FreeBSD and NetBSD (but not OpenBSD) - * want alignment in bytes. */ -#if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) + * want alignment in bytes. + * + * (As in the GNAME() definitions above, as of sbcl-0.8.10, this seems + * no longer to be much of an issue, since everyone has converged on + * the same value. If this generality really turns out not to + * matter any more, perhaps it's just clutter we could get + * rid of? -- WHN 2004-04-18) + */ +#if defined(__linux__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) #define align_4byte 4 #define align_8byte 8 #define align_16byte 16 @@ -44,7 +57,6 @@ .text .global GNAME(foreign_function_call_active) .global GNAME(all_threads) - /* * A call to call_into_c preserves esi, edi, and ebp. Index: validate.c =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/validate.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- validate.c 1 Apr 2004 02:05:05 -0000 1.19 +++ validate.c 19 Apr 2004 03:41:40 -0000 1.20 @@ -30,6 +30,8 @@ "ensure_space: failed to validate %ld bytes at 0x%08lx\n", size, (unsigned long)start); + fprintf(stderr, + "(hint: Try \"ulimit -a\"; maybe you should increase memory limits.)\n"); exit(1); } } Index: undefineds.h =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/undefineds.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- undefineds.h 8 Apr 2004 13:26:04 -0000 1.15 +++ undefineds.h 19 Apr 2004 03:41:40 -0000 1.16 @@ -160,7 +160,7 @@ F(socket) F(socketpair) F(stat) -#ifndef SVR4 +#if !defined(SVR4) && !defined(__OpenBSD__) F(swapon) #endif F(symlink) Index: thread.c =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/thread.c,v retrieving revision 1.25 retrieving revision 1.26 diff -u -d -r1.25 -r1.26 --- thread.c 30 Mar 2004 12:24:53 -0000 1.25 +++ thread.c 19 Apr 2004 03:41:40 -0000 1.26 @@ -48,6 +48,7 @@ * whatever other bookkeeping needs to be done */ +#ifdef LISP_FEATURE_SB_THREAD int new_thread_trampoline(struct thread *th) { @@ -62,6 +63,7 @@ th->state=STATE_RUNNING; return funcall0(function); } +#endif /* LISP_FEATURE_SB_THREAD */ /* this is called from any other thread to create the new one, and * initialize all parts of it that can be initialized from another Index: bsd-os.h =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/bsd-os.h,v retrieving revision 1.12 retrieving revision 1.13 diff -u -d -r1.12 -r1.13 --- bsd-os.h 8 Apr 2004 13:26:04 -0000 1.12 +++ bsd-os.h 19 Apr 2004 03:41:40 -0000 1.13 @@ -18,8 +18,10 @@ #include <sys/signal.h> typedef caddr_t os_vm_address_t; -#ifdef __NetBSD__ +#if defined __NetBSD__ typedef vsize_t os_vm_size_t; +#elif defined __OpenBSD__ +typedef size_t os_vm_size_t; #else typedef vm_size_t os_vm_size_t; #endif Index: bsd-os.c =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/runtime/bsd-os.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- bsd-os.c 13 Apr 2004 13:31:37 -0000 1.21 +++ bsd-os.c 19 Apr 2004 03:41:40 -0000 1.22 @@ -37,7 +37,6 @@ #include <signal.h> /* #include <sys/sysinfo.h> */ #include "validate.h" - os_vm_size_t os_vm_page_size; |