This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RFA: EINTR in procfs_wait


Folks,

I got this patch and it seems that we did forget to test for EINTR in
procfs_wait(). It looks like an "obvious fix" but I would like someone
else to double check it.

Thanks in advance.

Fernando



2001-04-05  Adam Mirowski  <Adam.Mirowski@Sun.COM>

	Fixed Insight on Solaris. It was not possible to debug a process 
	because of EINTR "errors".
	* procfs.c: (procfs_wait): if proc_wait_for_stop() fails
	with EINTR, retry the call.


Index: gdb/procfs.c
------- procfs.c -------
*** /tmp/dMKayx_	Tue Apr 10 16:20:54 2001
--- procfs.c	Thu Apr  5 22:21:40 2001
***************
*** 3518,3531 ****
--- 3518,3533 ----
  
  	      if (retval != PIDGET (inferior_pid))	/* wrong child? */
  		error ("procfs: couldn't stop process %d: wait returned %d\n",
  		       inferior_pid, retval);
  	      /* FIXME: might I not just use waitpid?
  		 Or try find_procinfo to see if I know about this child? */
  	    }
+ 	  else if (errno == EINTR)
+ 	    goto wait_again;
  	  else
  	    {
  	      /* Unknown error from wait_for_stop. */
  	      proc_error (pi, "target_wait (wait_for_stop)", __LINE__);
  	    }
  	}
        else


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]