X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Flinux-os.c;h=faf1a4729c1a4688a982a2af9a9e3f039283b131;hb=88cc2f72774202503588331fddd1592ae8546de1;hp=026923ae15d81c4d2d21b8a32a99dbfd995d62fa;hpb=03363f0145ab5e88a17a4b881068dc921f7d122f;p=sbcl.git diff --git a/src/runtime/linux-os.c b/src/runtime/linux-os.c index 026923a..faf1a47 100644 --- a/src/runtime/linux-os.c +++ b/src/runtime/linux-os.c @@ -34,6 +34,7 @@ #include "runtime.h" #include "genesis/static-symbols.h" #include "genesis/fdefn.h" + #include #include #include @@ -61,7 +62,7 @@ int personality (unsigned long); size_t os_vm_page_size; -#ifdef LISP_FEATURE_SB_THREAD +#if defined(LISP_FEATURE_SB_THREAD) && !defined(LISP_FEATURE_SB_LUTEX) #include #include #include @@ -96,7 +97,6 @@ futex_wake(int *lock_word, int n) int linux_sparc_siginfo_bug = 0; -int linux_no_threads_p = 0; #ifdef LISP_FEATURE_SB_THREAD int @@ -119,7 +119,7 @@ os_init(char *argv[], char *envp[]) { /* Conduct various version checks: do we have enough mmap(), is * this a sparc running 2.2, can we do threads? */ -#ifdef LISP_FEATURE_SB_THREAD +#if defined(LISP_FEATURE_SB_THREAD) && !defined(LISP_FEATURE_SB_LUTEX) int *futex=0; #endif struct utsname name; @@ -145,12 +145,14 @@ os_init(char *argv[], char *envp[]) #endif } #ifdef LISP_FEATURE_SB_THREAD +#if !defined(LISP_FEATURE_SB_LUTEX) futex_wait(futex,-1); if(errno==ENOSYS) { lose("This version of SBCL is compiled with threading support, but your kernel\n" "is too old to support this. Please use a more recent kernel or\n" "a version of SBCL without threading support.\n"); } +#endif if(! isnptl()) { lose("This version of SBCL only works correctly with the NPTL threading\n" "library. Please use a newer glibc, use an older SBCL, or stop using\n"