summaryrefslogtreecommitdiffstats
path: root/source/a/mkinitrd/0001-Fix-LUKSTRIM-with-C-T-and-UUID.patch
blob: 8166d9ffdcb7b19c7c331fd1b67f61acdb29048a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
--- ./init.orig	2018-04-18 13:55:09.661574866 -0500
+++ ./init	2019-12-15 12:09:45.337013433 -0600
@@ -219,11 +219,15 @@
     fi
 
     LUKSLIST_DEFERRED=""
-    LUKSLIST=$(echo $LUKSDEV | tr -s ':' ' ')
+    for dev in $(echo $LUKSDEV | tr -s ':' ' ') ; do
+      LUKSLIST="$LUKSLIST $(findfs $dev)" 
+    done
+
+    for dev in $(echo $LUKSTRIM | tr -s ':' ' ') ; do
+      TRIMLIST="$TRIMLIST $(findfs $dev)" 
+    done
+
     for LUKSDEV in $LUKSLIST ; do
-      if echo $LUKSDEV | grep -q "LABEL=" || echo $LUKSDEV | grep -q "UUID=" ; then
-        LUKSDEV=$(findfs $LUKSDEV)
-      fi
       if /sbin/cryptsetup isLuks ${LUKSDEV} 1>/dev/null 2>/dev/null ; then
         if echo $ROOTDEV | grep -q "LABEL=" || echo $ROOTDEV | grep -q "UUID=" ; then
           CRYPTDEV="luks$(basename $LUKSDEV)"
@@ -232,7 +236,7 @@
         else
           CRYPTDEV="luks$(basename $LUKSDEV)"
         fi
-        if echo $LUKSTRIM | grep -wq $LUKSDEV 2>/dev/null ; then 
+        if echo "$TRIMLIST" | grep -wq "$LUKSDEV" 2>/dev/null ; then 
           LUKSOPTS="--allow-discards"
         else
           LUKSOPTS=""