Age | Commit message (Collapse) | Author |
|
|
|
|
|
Conflicts:
sysdeps/mach/hurd/i386/init-first.c
sysdeps/unix/sysv/linux/ldsodefs.h
|
|
|
|
|
|
|
|
|
|
Conflicts:
configure
configure.in
hurd/ctty-input.c
hurd/ctty-output.c
hurd/hurd/signal.h
hurd/hurdexec.c
hurd/hurdmsg.c
hurd/hurdsig.c
hurd/hurdsocket.h
socket/recvmmsg.c
socket/sendmmsg.c
sysdeps/mach/hurd/i386/sigreturn.c
sysdeps/mach/hurd/i386/trampoline.c
sysdeps/mach/hurd/pipe.c
sysdeps/mach/hurd/recvmsg.c
sysdeps/mach/hurd/sendmsg.c
sysdeps/mach/hurd/sigaction.c
sysdeps/mach/hurd/sigpending.c
sysdeps/mach/hurd/sigprocmask.c
sysdeps/mach/hurd/sigsuspend.c
sysdeps/mach/hurd/sigwait.c
sysdeps/mach/hurd/socketpair.c
sysdeps/mach/hurd/tls.h
sysdeps/unix/sysv/linux/recvmmsg.c
sysdeps/unix/sysv/linux/sendmmsg.c
|
|
|
|
* hurd/hurd/resource.h (MACH_PRIORITY_TO_NICE, NICE_TO_MACH_PRIORITY): Align
nice levels on Mach priorities from 5 to 45.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
* hurd/hurdselect.c (_hurd_select): In the poll case, do not return EINVAL when
nfds is greater than FD_SETSIZE.
|
|
|
|
We need to set MACH_RCV_INTERRUPT to avoid __mach_msg looping on signals, and
then handle the interruption.
|
|
refs/top-bases/tschwinge/Roger_Whittaker
|
|
The function attempts to optimize this case by performing one IPC system call
with the timeout included among the parameters, but in the absence of a reply,
it will call mach_msg again with the same timeout later, effectively doubling
the total timeout of the select/poll call.
Remove this optimization for the time being.
* hurd/hurdselect.c (_hurd_select): Always call __io_select with no timeout.
|
|
|
|
|
|
|
|
|
|
* hurd/hurdsig.c (sigstate_is_global_rcv): Do not return true
if _HURD_GLOBAL_SIGSTATE is null.
|
|
t/hurdsig-global-dispositions
|
|
|
|
|
|
|
|
t/hurdsig-global-dispositions
|
|
|
|
t/hurdsig-global-dispositions
|
|
|
|
Conflicts:
configure
configure.in
hurd/Makefile
nptl/sysdeps/pthread/bits/libc-lock.h
sysdeps/i386/configure
sysdeps/powerpc/powerpc32/configure
sysdeps/powerpc/powerpc64/configure
sysdeps/unix/sysv/linux/configure
sysdeps/unix/sysv/linux/configure.in
|
|
Conflicts:
hurd/hurdchdir.c
hurd/hurdselect.c
sysdeps/mach/hurd/bits/posix_opt.h
sysdeps/mach/hurd/brk.c
sysdeps/mach/hurd/chroot.c
sysdeps/mach/hurd/mkdir.c
sysdeps/mach/hurd/mkdirat.c
sysdeps/mach/hurd/opendir.c
sysdeps/mach/hurd/readlinkat.c
sysdeps/mach/hurd/setresgid.c
sysdeps/mach/hurd/setresuid.c
|
|
Conflicts:
bits/in.h
hurd/catch-signal.c
sysdeps/mach/hurd/accept.c
sysdeps/mach/hurd/accept4.c
sysdeps/mach/hurd/bits/socket.h
sysdeps/mach/hurd/dl-sysdep.c
sysdeps/mach/hurd/dup2.c
sysdeps/mach/hurd/dup3.c
sysdeps/mach/hurd/i386/____longjmp_chk.S
sysdeps/mach/hurd/i386/init-first.c
sysdeps/mach/hurd/kernel-features.h
sysdeps/mach/hurd/opendir.c
sysdeps/mach/hurd/symlink.c
sysdeps/mach/hurd/symlinkat.c
|
|
(cherry picked from commit 10589b4adb212dfde20670aacfb76aa842f42b92)
Conflicts:
ChangeLog
|
|
(cherry picked from commit 63643c85d4c47512decc16f35124160629c39a86)
Conflicts:
ChangeLog
|
|
(cherry picked from commit c6474b07e7b5f0cdc9089c1c4fcfc4fcaa2bcd92)
Conflicts:
ChangeLog
|
|
(cherry picked from commit edadcbd6247ca741756e234b6aa5f3db895bdd3d)
Conflicts:
ChangeLog
|
|
(cherry picked from commit 802ca5a5efa5d11836b2ffd81c9f6fd42f938ac6)
Conflicts:
ChangeLog
|