X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fruntime%2Flinux-os.h;h=6f1003cf8dd7270e2ebee82d64280343db588f9b;hb=0285aa5ff8416027932daa001b84429be2ca559b;hp=4303f34e7694380451b2af4233229855b3b1cc1f;hpb=6b7b0266343826426a3efffa3b8b8d4d552f8f97;p=sbcl.git diff --git a/src/runtime/linux-os.h b/src/runtime/linux-os.h index 4303f34..6f1003c 100644 --- a/src/runtime/linux-os.h +++ b/src/runtime/linux-os.h @@ -22,20 +22,25 @@ #include #include #include -#include "target-arch-os.h" -#include "target-arch.h" - -#define linuxversion(a, b, c) (((a)<<16)+((b)<<8)+(c)) +// Needs to be defined before including target-arch.h typedef caddr_t os_vm_address_t; typedef size_t os_vm_size_t; typedef off_t os_vm_offset_t; typedef int os_vm_prot_t; +#include "target-arch-os.h" +#include "target-arch.h" +#define linuxversion(a, b, c) (((a)<<16)+((b)<<8)+(c)) + #define OS_VM_PROT_READ PROT_READ #define OS_VM_PROT_WRITE PROT_WRITE #define OS_VM_PROT_EXECUTE PROT_EXEC #define SIG_MEMORY_FAULT SIGSEGV -#define SIG_INTERRUPT_THREAD SIGRTMIN +/* Note that this must be higher than the highest numbered + * synchronously generated signal that we handle (that is SIGSEGV), + * due to Linux signal handling pecularities. See thread "Signal + * delivery order" from 2009-03-14 on kernel-devel@vger.kernel.org. */ +#define SIG_STOP_FOR_GC (SIGUSR2)