From 00f461feff3206b41a31f60cd94b459ef79cfdd0 Mon Sep 17 00:00:00 2001
From: dtc <dtc>
Date: Thu, 16 Sep 1999 15:26:01 +0000
Subject: [PATCH] Avoid the SA_SIGINFO flag on Linux as it causes the creation
 of alternate real-time interrupt frames.

---
 lisp/interrupt.c | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

diff --git a/lisp/interrupt.c b/lisp/interrupt.c
index 7d362bb05..8461295cb 100644
--- a/lisp/interrupt.c
+++ b/lisp/interrupt.c
@@ -1,4 +1,4 @@
-/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/interrupt.c,v 1.19 1999/02/22 11:49:18 dtc Exp $ */
+/* $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/lisp/interrupt.c,v 1.20 1999/09/16 15:26:01 dtc Exp $ */
 
 /* Interrupt handing magic. */
 
@@ -500,7 +500,15 @@ void interrupt_install_low_level_handler
     sa.sa_sigaction = handler;
     sigemptyset(&sa.sa_mask);
     FILLBLOCKSET(&sa.sa_mask);
+#if defined(__linux__)
+    /*
+     * Don't want the SIGINFO flag on linux as it causes the creation
+     * of real-time interrupt frames.
+     */
+    sa.sa_flags = SA_RESTART;
+#else
     sa.sa_flags = SA_RESTART | SA_SIGINFO;
+#endif
 
     sigaction(signal, &sa, NULL);
 #else
@@ -563,7 +571,15 @@ unsigned long install_handler(int signal,
 
 	sigemptyset(&sa.sa_mask);
 	FILLBLOCKSET(&sa.sa_mask);
+#if defined(__linux__)
+	/*
+	 * Don't want the SIGINFO flag on linux as it causes the
+	 * creation of real-time interrupt frames.
+	 */
+	sa.sa_flags = SA_RESTART;
+#else
 	sa.sa_flags = SA_SIGINFO | SA_RESTART;
+#endif
 
 	sigaction(signal, &sa, NULL);
     }
-- 
GitLab