-
-
#ifdef LISP_FEATURE_SB_THREAD
#include <architecture/i386/table.h>
#include <i386/user_ldt.h>
#include <pthread.h>
#include <assert.h>
#include <stdlib.h>
+#include <stdio.h>
#ifdef LISP_FEATURE_SB_THREAD
build_fake_signal_context(context, thread_state, float_state);
- block_blockable_signals();
+ block_blockable_signals(0, 0);
handler(signal, siginfo, context);
}
/* At stack guard */
if (os_trunc_to_page(addr) == CONTROL_STACK_GUARD_PAGE(th)) {
- protect_control_stack_guard_page(0, th);
- protect_control_stack_return_guard_page(1, th);
+ lower_thread_control_stack_guard_page(th);
handler = control_stack_exhausted_handler;
break;
}
/* Return from stack guard */
if (os_trunc_to_page(addr) == CONTROL_STACK_RETURN_GUARD_PAGE(th)) {
- protect_control_stack_guard_page(1, th);
- protect_control_stack_return_guard_page(0, th);
+ reset_thread_control_stack_guard_page(th);
break;
}
/* Regular memory fault */
/* mach_msg_server should never return, but it should dispatch mach
* exceptions to our catch_exception_raise function
*/
- abort();
+ lose("mach_msg_server returned");
}
#endif