diff options
author | Ludovic Courtès <ludo@gnu.org> | 2014-06-21 17:35:56 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2014-06-21 17:35:56 +0200 |
commit | 9b9148d8bb1e6cdb383172bf3201f81c9bb43258 (patch) | |
tree | d5fd8d1c2162d33234c9fe7c5fe4da92e298ae06 | |
parent | 738146bfd4a8643c13f20b9f621a2d98c6b06660 (diff) | |
download | guix-9b9148d8bb1e6cdb383172bf3201f81c9bb43258.tar guix-9b9148d8bb1e6cdb383172bf3201f81c9bb43258.tar.gz |
linux-initrd: Allow unionfs to have a large number of open files.
Fixes <http://bugs.gnu.org/17827>.
* guix/build/linux-initrd.scm (mount-root-file-system) [volatile-root?]:
Pass unionfs '-o max_file=65536'.
-rw-r--r-- | guix/build/linux-initrd.scm | 7 |
1 files 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 @@ UNIONFS." ;; 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 <http://bugs.gnu.org/17827>. (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")) |