Hi,

Sometimes OpenBSD CI tasks fail with 'No space left on device' [1].
It's due to the OpenBSD CI task's RAM disk size being ~3.8 GB. This
patch increases it to ~4.6 GB. I chose this size manually, we can
increase it more.

Any feedback would be appreciated.

[1] https://cirrus-ci.com/task/4600833263796224

-- 
Regards,
Nazir Bilal Yavuz
Microsoft
From 3bbac7b116e74ed1932cc14c3a086fe951a3e2a8 Mon Sep 17 00:00:00 2001
From: Nazir Bilal Yavuz <byavu...@gmail.com>
Date: Fri, 15 Aug 2025 11:28:56 +0300
Subject: [PATCH v1] ci: openbsd: Increase RAM disk's size

Its size was ~3.8GB before, which was not enough sometimes. OpenBSD CI
task was failing due to no space left on device. So, make it ~4.6 GB.
---
 src/tools/ci/gcp_ram_disk.sh | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/tools/ci/gcp_ram_disk.sh b/src/tools/ci/gcp_ram_disk.sh
index d48634512ac..18dbb2037f5 100755
--- a/src/tools/ci/gcp_ram_disk.sh
+++ b/src/tools/ci/gcp_ram_disk.sh
@@ -15,7 +15,12 @@ case "`uname`" in
     umount /dev/sd0j # unused /usr/obj partition
     printf "m j\n\n\nswap\nw\nq\n" | disklabel -E sd0
     swapon /dev/sd0j
-    mount -t mfs -o rw,noatime,nodev,-s=8000000 swap $CIRRUS_WORKING_DIR
+    # Remove the per-process data segment limit so that mount_mfs can allocate
+    # large memory filesystems. Without this, mount_mfs mmap() may fail with
+    # "Cannot allocate memory" if the requested size exceeds the current
+    # datasize limit.
+    ulimit -d unlimited
+    mount -t mfs -o rw,noatime,nodev,-s=10000000 swap $CIRRUS_WORKING_DIR
     ;;
 esac
 
-- 
2.50.1

Reply via email to