aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Kingdon <jkingdon@engr.sgi.com>1994-02-01 21:46:17 +0000
committerJim Kingdon <jkingdon@engr.sgi.com>1994-02-01 21:46:17 +0000
commit8afd05c039bd01e263ee1c96dd80213d8dffd971 (patch)
tree7276c21864d46918881b88312d2e7cb52d5e8762
parent10b9bb562ec1905685862850071c227c7289ccd3 (diff)
downloadgdb-8afd05c039bd01e263ee1c96dd80213d8dffd971.zip
gdb-8afd05c039bd01e263ee1c96dd80213d8dffd971.tar.gz
gdb-8afd05c039bd01e263ee1c96dd80213d8dffd971.tar.bz2
Tue Feb 1 22:13:25 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
* procfs.c (wait_fd): Handle EINTR error return from PIOCWSTOP ioctl by restarting the ioctl.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/procfs.c9
2 files changed, 11 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index a59820d..6206f63 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+Tue Feb 1 22:13:25 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de)
+
+ * procfs.c (wait_fd): Handle EINTR error return from PIOCWSTOP ioctl
+ by restarting the ioctl.
+
Tue Feb 1 16:16:25 1994 Jim Kingdon (kingdon@lioth.cygnus.com)
* target.h (target_wait): Add comment about calling
diff --git a/gdb/procfs.c b/gdb/procfs.c
index 0d7aee8..86d7bb7 100644
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -579,10 +579,13 @@ wait_fd ()
#else
pi = current_procinfo;
- if (ioctl (pi->fd, PIOCWSTOP, &pi->prstatus) < 0)
+ while (ioctl (pi->fd, PIOCWSTOP, &pi->prstatus) < 0)
{
- print_sys_errmsg (pi->pathname, errno);
- error ("PIOCWSTOP failed");
+ if (errno != EINTR)
+ {
+ print_sys_errmsg (pi->pathname, errno);
+ error ("PIOCWSTOP failed");
+ }
}
pi->had_event = 1;
#endif