From 054a3b21801ee222a200ee09ea954a4299fab516 Mon Sep 17 00:00:00 2001 From: Donat Zenichev Date: Wed, 24 Jun 2026 16:26:32 +0200 Subject: [PATCH] MT#61856 media_socket: reset `active_read_events` After marking the socket as being processed by this thread, reset it back in case processing in `stream_fd_readable()` returns due to exceeded queue. Change-Id: Ia7415daf7eb568716ec88215b9f07ef551656c7c --- daemon/media_socket.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/daemon/media_socket.c b/daemon/media_socket.c index 792ad94b3..695a23ce9 100644 --- a/daemon/media_socket.c +++ b/daemon/media_socket.c @@ -3834,6 +3834,10 @@ static void stream_fd_readable(int fd, void *p) { "discarding packet", strikes); // Polling is edge-triggered so we won't immediately get here again. // We could remove ourselves from the poller though. Maybe call stream_fd_closed? + + // reset active_read_events to let other threads know + // there is no one handling this socket + g_atomic_int_set(&sfd->active_read_events, 0); return; }