From fe23c59e0c0bcc6804ec28ee4a13152851d10eb7 Mon Sep 17 00:00:00 2001 From: Gmer4Lfe Date: Fri, 21 Aug 2026 08:26:28 -0400 Subject: [PATCH] Stop the process-list pipeline writing broken-pipe noise to stderr --- Plugin/unraid/include/common.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Plugin/unraid/include/common.php b/Plugin/unraid/include/common.php index fcc734b..cd503f2 100644 --- a/Plugin/unraid/include/common.php +++ b/Plugin/unraid/include/common.php @@ -427,7 +427,10 @@ function vv_memory_breakdown(): array { // Top processes by RSS — group same-named procs, take top 5 $grouped = []; - $psOut = shell_exec("ps -eo comm,rss --sort=-rss 2>/dev/null | tail -n +2 | head -40") ?: ''; + // stderr silenced for the pipeline, not just for ps: head -40 exits on the fortieth line and + // leaves tail writing into a closed pipe, which tail reports. Harmless, but it went to stderr + // once a minute from the cache writer on both hosts, and the repair sweep reads that log. + $psOut = shell_exec("{ ps -eo comm,rss --sort=-rss | tail -n +2 | head -40; } 2>/dev/null") ?: ''; foreach (explode("\n", trim($psOut)) as $line) { $parts = preg_split('/\s+/', trim($line), 2); if (count($parts) === 2 && is_numeric($parts[1]) && (int)$parts[1] > 0)