Index: /trunk/ccl/lisp-kernel/thread_manager.c
===================================================================
--- /trunk/ccl/lisp-kernel/thread_manager.c	(revision 892)
+++ /trunk/ccl/lisp-kernel/thread_manager.c	(revision 893)
@@ -232,13 +232,13 @@
 
 TCR *
-get_interrupt_tcr()
+get_interrupt_tcr(Boolean create)
 {
 #ifndef LINUX
-  return get_tcr(true);
+  return get_tcr(create);
 #else
   void* callers_r2 = current_r2;
 
   if (callers_r2 == NULL) {	/* pre-glibc-2.3.2 Linux */
-    return get_tcr(true);
+    return get_tcr(create);
   } else {
     TCR  *head = (TCR *)lisp_global(INITIAL_TCR), *current = head;
@@ -266,5 +266,5 @@
        struct pointer and that it's therefore safe to call get_tcr().
     */
-    return get_tcr(true);
+    return get_tcr(create);
   }
 #endif
@@ -275,5 +275,5 @@
 suspend_resume_handler(int signo, siginfo_t *info, ExceptionInformation *context)
 {
-  TCR *tcr = get_interrupt_tcr(true);
+  TCR *tcr = get_interrupt_tcr(false);
 
   if (signo == thread_suspend_signal) {
