dbus: enable epoll support

This commit is contained in:
Jeremy Soller 2025-11-10 12:42:51 -07:00
parent 8e492423c1
commit 070ebb0c52
No known key found for this signature in database
GPG Key ID: 670FDFB5428E05CA
2 changed files with 24 additions and 4 deletions

View File

@ -17,7 +17,7 @@ dependencies = [
template = "meson"
mesonflags = [
#TODO: why does this require Linux?
"-Depoll=disabled",
"-Depoll=enabled",
"-Dx11_autolaunch=enabled",
"-Dverbose_mode=true",
]

View File

@ -1,7 +1,27 @@
diff -ruwN source-old/dbus/dbus-pollable-set-epoll.c source/dbus/dbus-pollable-set-epoll.c
--- source-old/dbus/dbus-pollable-set-epoll.c 2025-02-27 09:29:06.000000000 -0700
+++ source/dbus/dbus-pollable-set-epoll.c 2025-11-10 10:21:36.940618496 -0700
@@ -30,7 +30,7 @@
#include <dbus/dbus-internals.h>
#include <dbus/dbus-sysdeps.h>
-#ifndef __linux__
+#if !defined(__linux__) && !defined(__redox__)
# error This file is for Linux epoll(4)
#endif
diff -ruwN source-old/dbus/dbus-sysdeps-unix.c source/dbus/dbus-sysdeps-unix.c
--- source-old/dbus/dbus-sysdeps-unix.c 2025-02-27 09:29:06.000000000 -0700
+++ source/dbus/dbus-sysdeps-unix.c 2025-10-30 10:39:53.344885840 -0600
@@ -4962,6 +4962,11 @@
+++ source/dbus/dbus-sysdeps-unix.c 2025-11-09 08:33:43.299893494 -0700
@@ -2611,6 +2611,7 @@
if (client_fd.fd < 0 && (errno == ENOSYS || errno == EINVAL))
#endif
{
+ _dbus_verbose ("accept %d, %p, %p\n", listen_fd.fd, &addr, &addrlen);
client_fd.fd = accept (listen_fd.fd, &addr, &addrlen);
}
@@ -4962,6 +4963,11 @@
void
_dbus_close_all (void)
{
@ -13,7 +33,7 @@ diff -ruwN source-old/dbus/dbus-sysdeps-unix.c source/dbus/dbus-sysdeps-unix.c
#ifdef HAVE_CLOSE_RANGE
if (close_range (3, INT_MAX, 0) == 0)
return;
@@ -4981,6 +4986,11 @@
@@ -4981,6 +4987,11 @@
void
_dbus_fd_set_all_close_on_exec (void)
{