Dmitry Chagin
0633df29be
Linux epoll return EEXIST on case when op is EPOLL_CTL_ADD, and the supplied
...
file descriptor fd is already registered with this epoll instance.
MFC after: 1 month
2017-02-28 19:55:16 +00:00
Dmitry Chagin
8bc4edfd75
Linux epoll return ENOENT error in case when op is EPOLL_CTL_MOD or
...
EPOLL_CTL_DEL, and fd is not registered with this epoll instance.
MFC after: 1 month
2017-02-28 19:54:22 +00:00
Dmitry Chagin
29b1ecbe01
FreeBSD does not have analgue for epill EPOLLPRI event type.
...
So, do not set EPOLLPRI event acidently.
Also, do not set EPOLLWRNORM and EPOLLRDNORM events as epoll
do not set this events.
MFC after: 1 month
2017-02-28 19:49:21 +00:00
Dmitry Chagin
281afc595f
Return EINVAL when an invalid file descriptor specified.
...
MFC after: 1 month
2017-02-27 16:55:09 +00:00
Dmitry Chagin
ed211c40f4
Unify eventfd ioctl method and use it for other similar interfaces.
...
MFC after: 1 month
2017-02-27 16:53:52 +00:00
Dmitry Chagin
2fa6d2fe84
Return EINVAL in case when an invalid size of signal mask specified.
...
MFC after: 1 month
2017-02-26 20:01:58 +00:00
Dmitry Chagin
80c7315d17
Restore signal mask in epoll_pwait.
...
MFC after: 1 month
2017-02-26 19:54:17 +00:00
Dmitry Chagin
e0a254f6df
Return EINVAL when an invalid file descriptor is specified.
...
MFC after: 1 month
2017-02-26 19:51:44 +00:00
Dmitry Chagin
dd93b628e9
Implement timerfd family syscalls.
...
MFC after: 1 month
2017-02-26 09:48:18 +00:00
Dmitry Chagin
01d4a346c2
Nostly style(9) changes, replace unused eventfd_truncate()
...
by default invfo_truncate() method.
MFC after: 1 month
2017-02-26 09:42:34 +00:00
Ed Maste
df4336ddfa
Catch up to sys/capability.h rename to sys/capsicum.h in r263232
...
MFC after: 1 month
Sponsored by: The FreeBSD Foundation
2016-09-19 18:44:43 +00:00
Dmitry Chagin
09806d8e3e
When write(2) on eventfd object fails with the error EAGAIN do not return
...
the number of bytes written.
MFC after: 1 week
2016-03-26 19:16:53 +00:00
Dmitry Chagin
2bb14e7541
Implement O_NONBLOCK flag via fcntl(F_SETFL) for eventfd object.
...
MFC after: 1 week
2016-03-26 19:15:23 +00:00
Ed Schouten
a2034cc98a
Allow the creation of kqueues with a restricted set of Capsicum rights.
...
On CloudABI we want to create file descriptors with just the minimal set
of Capsicum rights in place. The reason for this is that it makes it
easier to obtain uniform behaviour across different operating systems.
By explicitly whitelisting the operations, we can return consistent
error codes, but also prevent applications from depending OS-specific
behaviour.
Extend kern_kqueue() to take an additional struct filecaps that is
passed on to falloc_caps(). Update the existing consumers to pass in
NULL.
Differential Revision: https://reviews.freebsd.org/D3259
2015-08-05 07:36:50 +00:00
Dmitry Chagin
3c91646b46
Add EPOLLRDHUP support.
...
Tested by: abi at abinet dot ru
2015-06-20 05:40:35 +00:00
Dmitry Chagin
6e4c8004dc
Implement epoll_pwait() system call.
2015-05-24 18:00:14 +00:00
Dmitry Chagin
76672e1113
Add EPOLLERR flag handling to epoll.
...
Tested by: abi at abinet dot ru
2015-05-24 17:42:45 +00:00
Dmitry Chagin
e2ff4b9864
As fo_fill_kinfo() does not check fo_fill_kinfo to NULL
...
add a fo_fill_kinfo op to eventfdops.
Reported by: trinity
2015-05-24 17:40:14 +00:00
Dmitry Chagin
a31d76867d
Implement eventfd system call.
...
Differential Revision: https://reviews.freebsd.org/D1094
In collaboration with: Jilles Tjoelker
2015-05-24 16:49:14 +00:00
Dmitry Chagin
e16fe1c730
Implement epoll family system calls. This is a tiny wrapper
...
around kqueue() to implement epoll subset of functionality.
The kqueue user data are 32bit on i386 which is not enough for
epoll user data, so we keep user data in the proc emuldata.
Initial patch developed by rdivacky@ in 2007, then extended
by Yuri Victorovich @ r255672 and finished by me
in collaboration with mjg@ and jillies@.
Differential Revision: https://reviews.freebsd.org/D1092
2015-05-24 16:41:39 +00:00