From e5186c616f974974ba455fc796960ccf055ed2b8 Mon Sep 17 00:00:00 2001 From: nevaforget Date: Tue, 28 Apr 2026 15:14:07 +0200 Subject: [PATCH] ci: cargo -j1 to keep peak memory under host budget; retrigger moongreet Run 108 hit a verified global OOM (constraint=CONSTRAINT_NONE) when cargo -j2 ran two parallel rustc workers on a host with 1.6 GiB available. -j1 halves the peak. 4 GiB swapfile added on host as additional buffer; this changes the build pipeline as the second layer. --- .gitea/workflows/build-and-publish.yaml | 19 ++++++++++++------- moongreet-git/PKGBUILD | 2 +- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/build-and-publish.yaml b/.gitea/workflows/build-and-publish.yaml index 1db2cb7..ea27b28 100644 --- a/.gitea/workflows/build-and-publish.yaml +++ b/.gitea/workflows/build-and-publish.yaml @@ -53,13 +53,18 @@ jobs: sudo pacman -S --needed --noconfirm $MAKEDEPS fi - # Parallel build with two cargo jobs. Previous single-threaded - # throttling was based on an unverified OOM assumption (run 86 - # on 2026-04-23 stalled; no dmesg/journalctl evidence of - # OOMKiller was ever captured). If a real OOM happens, capture - # `dmesg | grep -i "killed process"` first before re-throttling. - export CARGO_BUILD_JOBS=2 - export MAKEFLAGS="-j2" + # Single-threaded build to keep memory peak below the 8 GiB + # host budget. Run 108 (2026-04-28) hit a verified global OOM + # (constraint=CONSTRAINT_NONE in journalctl, rustc killed at + # 1.7 GiB RSS while host was already at 6.2 GiB used / 1.6 GiB + # available). Two parallel rustc workers blow that reserve. + # Container-side mem_limit doesn't help because the kill is + # global, not cgroup. -j1 halves the peak; act_runner blkio + # cap (30 MB/s) protects I/O. Do NOT raise without a wider + # memory plan (more host RAM, per-container caps, or larger + # swap headroom). + export CARGO_BUILD_JOBS=1 + export MAKEFLAGS="-j1" makepkg -sfd --noconfirm # makepkg can emit multiple artifacts per build (main + -debug diff --git a/moongreet-git/PKGBUILD b/moongreet-git/PKGBUILD index 38aff28..2c88819 100644 --- a/moongreet-git/PKGBUILD +++ b/moongreet-git/PKGBUILD @@ -6,7 +6,7 @@ pkgname=moongreet-git epoch=1 pkgver=0.8.3.r3.gb9b6f50 -pkgrel=6 +pkgrel=7 pkgdesc="A greetd greeter for Wayland with GTK4 and Layer Shell" arch=('x86_64') url="https://gitea.moonarch.de/nevaforget/greetd-moongreet"