Skip to content

Free runtime tmpfs before daemon-reload to unblock bookworm upgrades#11

Merged
d4rken merged 1 commit into
devfrom
fix/daemon-reload-runtime-tmpfs-preflight
May 21, 2026
Merged

Free runtime tmpfs before daemon-reload to unblock bookworm upgrades#11
d4rken merged 1 commit into
devfrom
fix/daemon-reload-runtime-tmpfs-preflight

Conversation

@d4rken
Copy link
Copy Markdown
Member

@d4rken d4rken commented May 21, 2026

On bookworm-based feeder images (the 2025 Pi-OS family), the runtime tmpfs defaults to about 43M and graphs1090's collectd holds about 34M of that for its in-memory RRD cache. systemd v249+ refuses daemon-reload when free space drops below a 16M safety buffer, which combined with this script's set -e aborts the entire upgrade at line 199 — before the feed bridge ever runs, so no apl-feed, no feed.env, no service enables. Reproduced live: 'Reload daemon failed: Refusing to reload, not enough space available, 2.3M free vs 16M safety buffer.'\n\nStop collectd before daemon-reload to free the cache. The script reboots at its tail so collectd auto-starts on next boot — no explicit restart needed. No-op when collectd is absent (manual / non-graphs1090 installs). Bullseye unaffected (its runtime tmpfs is about 86M and stays well above the safety buffer).\n\nPinned in the rootfs smoke test with an explicit order assertion so the pre-flight cannot silently regress.

Bookworm Pi-OS feeders default the runtime tmpfs to 43M and graphs1090's collectd in-memory RRD cache can occupy 34M of it. Systemd refuses daemon-reload below its 16M safety buffer, which under set -e aborts the entire upgrade before the feed bridge runs. Stop collectd to free its cache; the script reboots at its tail so collectd auto-starts on next boot. No-op when collectd is absent.
@d4rken d4rken added the bug Something isn't working label May 21, 2026
@d4rken d4rken merged commit 4b85138 into dev May 21, 2026
4 checks passed
@d4rken d4rken deleted the fix/daemon-reload-runtime-tmpfs-preflight branch May 21, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant