From 55d83eb9b0540bb609a5eb3dbd66c7b5cb4cae78 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Fri, 3 Jan 2025 13:10:57 +0900 Subject: [PATCH] helper/bwrap: allocate large args slice Signed-off-by: Ophestra --- helper/bwrap/arg.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/helper/bwrap/arg.go b/helper/bwrap/arg.go index efdab82..9994c31 100644 --- a/helper/bwrap/arg.go +++ b/helper/bwrap/arg.go @@ -54,6 +54,11 @@ func (c *Config) Args() (args []string) { c.pairArgs(), } + /* this is only 8 KiB of memory on a 64-bit system, + permissive defaults on NixOS results in around 200 args + so this capacity should eliminate copies for most setups */ + args = make([]string, 0, 512) + // copy FSBuilder slice to builder slice fb := make([]Builder, len(c.Filesystem)+1) for i, f := range c.Filesystem {