- Dec 04, 2013
-
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
- Dec 03, 2013
-
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
- Nov 22, 2013
-
-
Avi Kivity authored
To prevent leaks when a file is close()d without an EPOLL_CTL_DEL, record epoll registrations in the file structure and remove them when the file is destroyed. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Avi Kivity authored
Holding filerefs causes close() to be delayed indefinitly in case the user "forgets" to EPOLL_CTL_DEL the file before close(). Signed-off-by:
Avi Kivity <avi@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
- Nov 21, 2013
-
-
Avi Kivity authored
Instead of using file descriptors and poll(), use do_poll(). This allows us to get rid of user supplied fds early, which is important as fd lifetime is decoupled from epoll lifetime. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
- Oct 16, 2013
-
-
Avi Kivity authored
Ignoring EPOLLET will generate more wakeups, but should work with most applications. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
It's a superset of epoll_create(), so implement the latter in terms of the former. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
- Sep 15, 2013
-
-
Nadav Har'El authored
Added Cloudius copyright statement to core/*. poll.cc already had a BSD copyright statement, I believe this is a mistake (I think Guy wrote this code from scratch), but not wanting to rush to a conclusion I'm leaving both copyright statements and we should address this issue later.
-
- Jul 08, 2013
-
-
Nadav Har'El authored
We can't include osv/poll.h from osv/file.h. It's not needed there, and causes a mess now that I added a use of BSD's "struct mtx" to poll.h (because it turns out we have code using <osv/file.h> and using the name "mtx" for something else). After removing the unneeded include of <osv/poll.h> from osv/file.h, we need to add include <sys/poll.h> to a few additional source files (note include of sys/poll.h, not osv/poll.h).
-
- Jun 30, 2013
-
-
Nadav Har'El authored
Replace debug() messages in epoll with useful tracepoints.
-
Nadav Har'El authored
epoll and poll() use different event names (e.g., EPOLLIN vs. POLLIN), but in practice the bits are identical. Make this conversion more explicit, and add static_assert()s that the bits are indeed identical. We still have dynamic assert() that the bits we don't support - EPOLLET (for edge triggered behavior) and EPOLLONESHOT - aren't used. This patch only makes the code cleaner, but doesn't change anything in its behavior.`
-
- Jun 25, 2013
-
-
Nadav Har'El authored
The "events", not "revents", field of the poll structure needs to be set before calling poll().
-
- Jun 19, 2013
-
-
Nadav Har'El authored
This is an epoll_*() implementation which calls poll() to do the real work. This is of course a terrible implementation, which makes epoll() less efficient, instead of more efficient, then poll(). However, it allows me to progress with running Jetty in parallel with perfecting epoll.
-