From: Jim Kingdon Date: Tue, 1 Feb 1994 21:46:17 +0000 (+0000) Subject: Tue Feb 1 22:13:25 1994 Peter Schauer (pes@regent.e-technik.tu-muenchen.de) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8afd05c039bd01e263ee1c96dd80213d8dffd971;p=binutils-gdb.git 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. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a59820dfc74..6206f63ecf6 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 0d7aee87757..86d7bb7706f 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