[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[SCM] glibc maintenance branch, youpi/poll_errors_fixes_v2, created. gli
From: |
Samuel Thibault |
Subject: |
[SCM] glibc maintenance branch, youpi/poll_errors_fixes_v2, created. glibc-2.16-ports-merge-3812-g743723f |
Date: |
Fri, 15 Feb 2013 00:38:02 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "glibc maintenance".
The branch, youpi/poll_errors_fixes_v2 has been created
at 743723f6f2ad1944ad87b8037bc0a266f642a89a (commit)
- Log -----------------------------------------------------------------
commit 743723f6f2ad1944ad87b8037bc0a266f642a89a
Author: Samuel Thibault <address@hidden>
Date: Fri Feb 15 01:37:33 2013 +0100
Fix poll and select POSIX compliancy details about errors
This fixes the following:
- Poll must not return immediately on error, including EBADF, and instead
report POLLHUP/POLLERR/POLLNVAL
- Select must report EBADF if some set contains an invalid FD.
The idea is to move error management to after all select calls, in the
poll/select final treatment. The error is instead recorded in a new `error'
field, and a new SELECT_ERROR bit set.
Thanks Svante Signell for the initial version of the patch.
* hurd/hurdselect.c (SELECT_ERROR): New macro.
(_hurd_select):
- Add `error' field to `d' structures array.
- If a poll descriptor is bogus, set EBADF, but continue.
- Go through the whole fd_set, not only until _hurd_dtablesize. Return EBADF
there is any bit set above _hurd_dtablesize.
- Do not request io_select on bogus descriptors (SELECT_ERROR).
- On io_select request error, record the error.
- On io_select bogus reply, use EIO error code.
- On io_select bogus or error reply, record the error.
- Do not destroy reply port for bogus FDs.
- On error, make poll set POLLHUP in the EPIPE case, POLLNVAL in the EBADF
case, or else POLLERR.
- On error, make select simulated readiness.
-----------------------------------------------------------------------
hooks/post-receive
--
glibc maintenance
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [SCM] glibc maintenance branch, youpi/poll_errors_fixes_v2, created. glibc-2.16-ports-merge-3812-g743723f,
Samuel Thibault <=