summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorRicardo M. Correia <rcorreia@wizy.org>2016-08-18 17:26:43 +0200
committerGitHub <noreply@github.com>2016-08-18 17:26:43 +0200
commitc2e5fd959d84cef0b62762df05e17c0748ffbb9f (patch)
tree0819b000f2852a59f8114d0585017a2bb35c6442 /nixos
parent409b53cba85d5b73f06488809652c1ee727817b7 (diff)
parent98b213a11041af39b39473906b595290e2a4e2f9 (diff)
downloadnixpkgs-c2e5fd959d84cef0b62762df05e17c0748ffbb9f.tar
nixpkgs-c2e5fd959d84cef0b62762df05e17c0748ffbb9f.tar.gz
nixpkgs-c2e5fd959d84cef0b62762df05e17c0748ffbb9f.tar.bz2
nixpkgs-c2e5fd959d84cef0b62762df05e17c0748ffbb9f.tar.lz
nixpkgs-c2e5fd959d84cef0b62762df05e17c0748ffbb9f.tar.xz
nixpkgs-c2e5fd959d84cef0b62762df05e17c0748ffbb9f.tar.zst
nixpkgs-c2e5fd959d84cef0b62762df05e17c0748ffbb9f.zip
Merge pull request #16901 from Baughn/zfs-nvme-fix
zfs: Keep trying root import until it works
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/tasks/filesystems/zfs.nix15
1 files changed, 13 insertions, 2 deletions
diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix
index 05fd160f20b..3149c860f30 100644
--- a/nixos/modules/tasks/filesystems/zfs.nix
+++ b/nixos/modules/tasks/filesystems/zfs.nix
@@ -247,8 +247,19 @@ in
               esac
             done
             ''] ++ (map (pool: ''
-            echo "importing root ZFS pool \"${pool}\"..."
-            zpool import -d ${cfgZfs.devNodes} -N $ZFS_FORCE "${pool}"
+            echo -n "importing root ZFS pool \"${pool}\"..."
+            trial=0
+            until msg="$(zpool import -d ${cfgZfs.devNodes} -N $ZFS_FORCE '${pool}' 2>&1)"; do
+              sleep 0.25
+              echo -n .
+              trial=$(($trial + 1))
+              if [[ $trial -eq 60 ]]; then
+                echo
+                echo "$msg"
+                break
+              fi
+            done
+            echo
         '') rootPools));
       };