? sigio.diff
Index: inf-ptrace.c
===================================================================
RCS file: /cvs/src/src/gdb/inf-ptrace.c,v
retrieving revision 1.51
diff -u -p -r1.51 inf-ptrace.c
--- inf-ptrace.c	11 Dec 2008 19:19:12 -0000	1.51
+++ inf-ptrace.c	15 Dec 2008 13:28:44 -0000
@@ -389,7 +389,6 @@ inf_ptrace_wait (ptid_t ptid, struct tar
   do
     {
       set_sigint_trap ();
-      set_sigio_trap ();
 
       do
 	{
@@ -398,7 +397,6 @@ inf_ptrace_wait (ptid_t ptid, struct tar
 	}
       while (pid == -1 && errno == EINTR);
 
-      clear_sigio_trap ();
       clear_sigint_trap ();
 
       if (pid == -1)
Index: inf-ttrace.c
===================================================================
RCS file: /cvs/src/src/gdb/inf-ttrace.c,v
retrieving revision 1.38
diff -u -p -r1.38 inf-ttrace.c
--- inf-ttrace.c	9 Nov 2008 11:27:17 -0000	1.38
+++ inf-ttrace.c	15 Dec 2008 13:28:45 -0000
@@ -930,7 +930,6 @@ inf_ttrace_wait (ptid_t ptid, struct tar
   do
     {
       set_sigint_trap ();
-      set_sigio_trap ();
 
       if (ttrace_wait (pid, lwpid, TTRACE_WAITOK, &tts, sizeof tts) == -1)
 	perror_with_name (("ttrace_wait"));
@@ -949,7 +948,6 @@ inf_ttrace_wait (ptid_t ptid, struct tar
 	  tts.tts_event = TTEVT_NONE;
 	}
 
-      clear_sigio_trap ();
       clear_sigint_trap ();
     }
   while (tts.tts_event == TTEVT_NONE);
Index: inferior.h
===================================================================
RCS file: /cvs/src/src/gdb/inferior.h,v
retrieving revision 1.116
diff -u -p -r1.116 inferior.h
--- inferior.h	20 Nov 2008 00:35:23 -0000	1.116
+++ inferior.h	15 Dec 2008 13:28:45 -0000
@@ -97,10 +97,6 @@ extern void set_sigint_trap (void);
 
 extern void clear_sigint_trap (void);
 
-extern void set_sigio_trap (void);
-
-extern void clear_sigio_trap (void);
-
 /* Set/get file name for default use for standard in/out in the inferior.  */
 
 extern void set_inferior_io_terminal (const char *terminal_name);
Index: inflow.c
===================================================================
RCS file: /cvs/src/src/gdb/inflow.c,v
retrieving revision 1.43
diff -u -p -r1.43 inflow.c
--- inflow.c	27 Oct 2008 22:37:20 -0000	1.43
+++ inflow.c	15 Dec 2008 13:28:45 -0000
@@ -651,68 +651,6 @@ clear_sigint_trap (void)
     }
 }
 
-#if defined (SIGIO) && defined (FASYNC) && defined (FD_SET) && defined (F_SETOWN)
-static void (*old_sigio) ();
-
-static void
-handle_sigio (int signo)
-{
-  int numfds;
-  fd_set readfds;
-
-  signal (SIGIO, handle_sigio);
-
-  FD_ZERO (&readfds);
-  FD_SET (target_activity_fd, &readfds);
-  numfds = gdb_select (target_activity_fd + 1, &readfds, NULL, NULL, NULL);
-  if (numfds >= 0 && FD_ISSET (target_activity_fd, &readfds))
-    {
-#ifndef _WIN32
-      if ((*target_activity_function) ())
-	kill (PIDGET (inferior_ptid), SIGINT);
-#endif
-    }
-}
-
-static int old_fcntl_flags;
-
-void
-set_sigio_trap (void)
-{
-  if (target_activity_function)
-    {
-      old_sigio = (void (*)()) signal (SIGIO, handle_sigio);
-      fcntl (target_activity_fd, F_SETOWN, getpid ());
-      old_fcntl_flags = fcntl (target_activity_fd, F_GETFL, 0);
-      fcntl (target_activity_fd, F_SETFL, old_fcntl_flags | FASYNC);
-    }
-}
-
-void
-clear_sigio_trap (void)
-{
-  if (target_activity_function)
-    {
-      signal (SIGIO, old_sigio);
-      fcntl (target_activity_fd, F_SETFL, old_fcntl_flags);
-    }
-}
-#else /* No SIGIO.  */
-void
-set_sigio_trap (void)
-{
-  if (target_activity_function)
-    internal_error (__FILE__, __LINE__, _("failed internal consistency check"));
-}
-
-void
-clear_sigio_trap (void)
-{
-  if (target_activity_function)
-    internal_error (__FILE__, __LINE__, _("failed internal consistency check"));
-}
-#endif /* No SIGIO.  */
-
 
 /* Create a new session if the inferior will run in a different tty.
    A session is UNIX's way of grouping processes that share a controlling
Index: linux-nat.c
===================================================================
RCS file: /cvs/src/src/gdb/linux-nat.c,v
retrieving revision 1.111
diff -u -p -r1.111 linux-nat.c
--- linux-nat.c	2 Dec 2008 07:57:36 -0000	1.111
+++ linux-nat.c	15 Dec 2008 13:28:45 -0000
@@ -2868,7 +2868,6 @@ retry:
     {
       /* Causes SIGINT to be passed on to the attached process.  */
       set_sigint_trap ();
-      set_sigio_trap ();
     }
 
   while (status == 0)
@@ -2937,10 +2936,7 @@ retry:
     }
 
   if (!target_can_async_p ())
-    {
-      clear_sigio_trap ();
-      clear_sigint_trap ();
-    }
+    clear_sigint_trap ();
 
   gdb_assert (lp);
 
Index: rs6000-nat.c
===================================================================
RCS file: /cvs/src/src/gdb/rs6000-nat.c,v
retrieving revision 1.82
diff -u -p -r1.82 rs6000-nat.c
--- rs6000-nat.c	11 Dec 2008 19:19:12 -0000	1.82
+++ rs6000-nat.c	15 Dec 2008 13:28:45 -0000
@@ -525,7 +525,6 @@ rs6000_wait (ptid_t ptid, struct target_
   do
     {
       set_sigint_trap ();
-      set_sigio_trap ();
 
       do
 	{
@@ -534,7 +533,6 @@ rs6000_wait (ptid_t ptid, struct target_
 	}
       while (pid == -1 && errno == EINTR);
 
-      clear_sigio_trap ();
       clear_sigint_trap ();
 
       if (pid == -1)
Index: spu-linux-nat.c
===================================================================
RCS file: /cvs/src/src/gdb/spu-linux-nat.c,v
retrieving revision 1.15
diff -u -p -r1.15 spu-linux-nat.c
--- spu-linux-nat.c	11 Dec 2008 19:19:12 -0000	1.15
+++ spu-linux-nat.c	15 Dec 2008 13:28:45 -0000
@@ -414,7 +414,6 @@ spu_child_wait (ptid_t ptid, struct targ
     {
       set_sigint_trap ();	/* Causes SIGINT to be passed on to the
 				   attached process.  */
-      set_sigio_trap ();
 
       pid = waitpid (PIDGET (ptid), &status, 0);
       if (pid == -1 && errno == ECHILD)
@@ -431,7 +430,6 @@ spu_child_wait (ptid_t ptid, struct targ
 	  save_errno = EINTR;
 	}
 
-      clear_sigio_trap ();
       clear_sigint_trap ();
     }
   while (pid == -1 && save_errno == EINTR);
Index: target.c
===================================================================
RCS file: /cvs/src/src/gdb/target.c,v
retrieving revision 1.192
diff -u -p -r1.192 target.c
--- target.c	2 Dec 2008 07:57:36 -0000	1.192
+++ target.c	15 Dec 2008 13:28:46 -0000
@@ -2475,10 +2475,6 @@ store_waitstatus (struct target_waitstat
     }
 }
 
-/* Returns zero to leave the inferior alone, one to interrupt it.  */
-int (*target_activity_function) (void);
-int target_activity_fd;
-
 /* Convert a normal process ID to a string.  Returns the string in a
    static buffer.  */
 
Index: target.h
===================================================================
RCS file: /cvs/src/src/gdb/target.h,v
retrieving revision 1.137
diff -u -p -r1.137 target.h
--- target.h	2 Dec 2008 15:52:15 -0000	1.137
+++ target.h	15 Dec 2008 13:28:46 -0000
@@ -299,15 +299,6 @@ extern void get_target_memory (struct ta
 extern ULONGEST get_target_memory_unsigned (struct target_ops *ops,
 					    CORE_ADDR addr, int len);
 
-
-/* If certain kinds of activity happen, target_wait should perform
-   callbacks.  */
-/* Right now we just call (*TARGET_ACTIVITY_FUNCTION) if I/O is possible
-   on TARGET_ACTIVITY_FD.  */
-extern int target_activity_fd;
-/* Returns zero to leave the inferior alone, one to interrupt it.  */
-extern int (*target_activity_function) (void);
-
 struct thread_info;		/* fwd decl for parameter list below: */
 
 struct target_ops
