From 9b9148d8bb1e6cdb383172bf3201f81c9bb43258 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 21 Jun 2014 17:35:56 +0200 Subject: linux-initrd: Allow unionfs to have a large number of open files. Fixes . * guix/build/linux-initrd.scm (mount-root-file-system) [volatile-root?]: Pass unionfs '-o max_file=65536'. --- guix/build/linux-initrd.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/guix/build/linux-initrd.scm b/guix/build/linux-initrd.scm index c1a0247aff..627c55f865 100644 --- a/guix/build/linux-initrd.scm +++ b/guix/build/linux-initrd.scm @@ -439,9 +439,12 @@ (define (mark-as-not-killable pid) ;; We want read-write /dev nodes. (make-essential-device-nodes #:root "/rw-root") - ;; Make /root a union of the tmpfs and the actual root. + ;; Make /root a union of the tmpfs and the actual root. Use + ;; 'max_files' to set a high RLIMIT_NOFILE for the unionfs process + ;; itself. Failing to do that, we quickly run out of file + ;; descriptors; see . (unless (zero? (system* unionfs "-o" - "cow,allow_other,use_ino,suid,dev" + "cow,allow_other,use_ino,suid,dev,max_files=65536" "/rw-root=RW:/real-root=RO" "/root")) (error "unionfs failed")) -- cgit v1.2.3