From 112026580d21c35b505de2378f21580d274e898f Mon Sep 17 00:00:00 2001 From: Felix Yan Date: Wed, 2 Nov 2022 00:44:50 +0000 Subject: [PATCH] makechrootpkg: make /tmp inside nspawn larger systemd by default limits the /tmp folder to be 10% of the host memory: https://github.com/systemd/systemd/blob/6f2cea06bfce6ad99f0ac37ab12af61ef7549fe3/src/shared/mount-util.h#L33 This is problematic to our builds because many toolchains opt to put build artifacts in /tmp, and expecting the host memory to be 10 times larger is not optimal or even realistic sometimes. This MR attempts to enlarge it to 50% memory as the host machine's default value of /tmp. This should be a fair compromise between being overly conservative and taking up too much memory to crash the system. --- src/makechrootpkg.in | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/makechrootpkg.in b/src/makechrootpkg.in index 895c1de..5d3eaae 100644 --- a/src/makechrootpkg.in +++ b/src/makechrootpkg.in @@ -24,6 +24,7 @@ clean_first=0 run_namcap=0 run_checkpkg=0 temp_chroot=0 +tmp_opts="nosuid,nodev,size=50%,nr_inodes=2m" bindmounts_ro=() bindmounts_rw=() @@ -365,6 +366,7 @@ prepare_chroot if arch-nspawn "$copydir" \ --bind="${PWD//:/\\:}:/startdir" \ --bind="${SRCDEST//:/\\:}:/srcdest" \ + --tmpfs="/tmp:${tmp_opts}" \ "${bindmounts_ro[@]}" "${bindmounts_rw[@]}" \ /chrootbuild "${makepkg_args[@]}" then