On Sun, 3 Feb 2013, Eitan Adler wrote:

On 3 February 2013 16:00, Giorgos Keramidas <keram...@freebsd.org> wrote:
The following reply was made to PR kern/175674; it has been noted by GNATS.
> The best way to fix this is in kern_openat() in the kernel but this
> might cause compatibility issues.
 Not sure if there would be serious compatibility problems if open() would
 automatically restart instead of returning EINTR.  It definitely seems a rather
 intrusive change though.
I can not see major application breakage should open(3) be changed.

That said,  I am confused by jilles' comment:
http://pubs.opengroup.org/onlinepubs/000095399/functions/open.html
open(3) is permitted to return EINTR.
Actually, open(3) is _required_ to return EINTR (if a signal occurs).

This hasn't changed since the old (2001) POSIX draft that I quoted in a
more detailed reply.  The wording is "shall fail...[with EINTR] if a
signal was caught during open()".  Only a perverse implementation of
weaselnix would justify not returning EINTR by not catching signals.

Bruce
_______________________________________________
freebsd-bugs@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-bugs
To unsubscribe, send any mail to "freebsd-bugs-unsubscr...@freebsd.org"

Reply via email to