Hi - > Here's a bunch of networking related bug fixes. Notably: > - Fix a certain class of UDP connections that couldn't receive packets > - Support Linux's undocumented epoll behavior (generate edge events if > the condition is present during EPOLL_CTL_ADD) > - Fix a horrendous epoll bug (threads could get other threads' timeouts) > - Implement accept4() > > Also, "db sem" now takes an optional PID (0 for ktasks).
I fixed another epoll bug and fixed up bt-akaros. I ran into some more in-depth issues with the toolchain, which I'll deal with in a future patch set (see my uth branch if you're curious). Barret The following changes since commit 233b28e094f6dcab89e7e3cc278b73ba738b40a7: Export CONFIG_ options via #version/kconfig (2017-02-15 14:05:25 -0500) are available in the git repository at: [email protected]:brho/akaros.git net for you to fetch changes up to 3e180064e3b832d33e36f2a0cf728832cf6c2b55: parlib: Fix potential races with DTLS (2017-03-02 13:01:29 -0500) ---------------------------------------------------------------- View this online at: https://github.com/brho/akaros/compare/233b28e094f6...3e180064e3b8 ---------------------------------------------------------------- Barret Rhoden (17): net: Fix UDP bind commands net: Allow connectionless convs to auto bind qio: Queues with no limit are always writable Add sys_send_event() (XCC) epoll: Fire existing events during EPOLL_CTL_ADD Update bt-akaros.sh Fix FD leak in pipe (XCC) Allow filtering by PID for "db sem" epoll: Give every waiter their own event queue epoll: Error out if someone asks for one-shot ceq: Add a dump function net: Report listen files with incalls as readable net: socket: Support SOCK_CLOEXEC (XCC) net: socket: Implement accept4() (XCC) parlib: Remove get_user_ctx_stack() parlib: Fix assertion in cpu_relax_vc() parlib: Fix potential races with DTLS kern/include/kthread.h | 3 +- kern/include/ros/bits/syscall.h | 1 + kern/src/ceq.c | 55 ++++++++ kern/src/kthread.c | 29 +++- kern/src/monitor.c | 10 +- kern/src/net/devip.c | 29 +++- kern/src/net/udp.c | 10 ++ kern/src/ns/qio.c | 2 +- kern/src/syscall.c | 14 ++ scripts/bt-akaros.sh | 31 ++--- tests/strace.c | 1 + .../glibc-2.19-akaros/sysdeps/akaros/accept.c | 136 +------------------ .../glibc-2.19-akaros/sysdeps/akaros/accept4.c | 147 +++++++++++++++++++++ .../glibc-2.19-akaros/sysdeps/akaros/bind.c | 2 +- .../glibc-2.19-akaros/sysdeps/akaros/connect.c | 15 ++- .../glibc-2.19-akaros/sysdeps/akaros/listen.c | 2 +- .../glibc-2.19-akaros/sysdeps/akaros/pipe2.c | 3 +- .../sysdeps/akaros/plan9_sockets.c | 31 ++++- .../glibc-2.19-akaros/sysdeps/akaros/shutdown.c | 2 +- .../glibc-2.19-akaros/sysdeps/akaros/socket.c | 13 +- .../sysdeps/akaros/sys/plan9_helpers.h | 1 + user/iplib/epoll.c | 97 ++++++++++++-- user/parlib/dtls.c | 9 +- user/parlib/include/parlib/parlib.h | 2 + user/parlib/include/parlib/riscv/vcore.h | 5 - user/parlib/include/parlib/x86/vcore.h | 14 -- user/parlib/signal.c | 4 +- user/parlib/syscall.c | 6 + user/parlib/vcore.c | 2 +- user/pthread/pthread.c | 3 +- 30 files changed, 456 insertions(+), 223 deletions(-) create mode 100644 tools/compilers/gcc-glibc/glibc-2.19-akaros/sysdeps/akaros/accept4.c -- You received this message because you are subscribed to the Google Groups "Akaros" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/d/optout.
