]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
ucode: revert a broken commit
authorFelix Fietkau <nbd@nbd.name>
Tue, 14 Oct 2025 11:03:11 +0000 (11:03 +0000)
committerFelix Fietkau <nbd@nbd.name>
Tue, 14 Oct 2025 12:54:26 +0000 (14:54 +0200)
It causes an infinite loop when polling nl80211 netlink sockets

Signed-off-by: Felix Fietkau <nbd@nbd.name>
package/utils/ucode/patches/010-Revert-nl80211-read-all-pending-event-messages.patch [new file with mode: 0644]

diff --git a/package/utils/ucode/patches/010-Revert-nl80211-read-all-pending-event-messages.patch b/package/utils/ucode/patches/010-Revert-nl80211-read-all-pending-event-messages.patch
new file mode 100644 (file)
index 0000000..0af66b2
--- /dev/null
@@ -0,0 +1,22 @@
+From: Felix Fietkau <nbd@nbd.name>
+Date: Tue, 14 Oct 2025 10:59:26 +0000
+Subject: [PATCH] Revert "nl80211: read all pending event messages"
+
+This reverts commit 387880348c89b5be54ddf13b9543b19266dd02ae.
+This commit is broken and causes infinite polling on netlink sockets.
+
+Signed-off-by: Felix Fietkau <nbd@nbd.name>
+---
+
+--- a/lib/nl80211.c
++++ b/lib/nl80211.c
+@@ -2722,8 +2722,7 @@ uc_nl_request(uc_vm_t *vm, size_t nargs)
+ static void
+ uc_nl_listener_cb(struct uloop_fd *fd, unsigned int events)
+ {
+-      while (nl_recvmsgs(nl80211_conn.evsock, nl80211_conn.evsock_cb) == 0)
+-              ;
++      nl_recvmsgs(nl80211_conn.evsock, nl80211_conn.evsock_cb);
+ }
+ static uc_value_t *