Blob Blame History Raw
From 57937cf480c8e612edae5b00d978dce84fd83be9 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Thu, 30 May 2013 12:02:59 +0200
Subject: [PATCH] lvm: add tools for thin provisioning

https://bugzilla.redhat.com/show_bug.cgi?id=921235
---
 modules.d/90lvm/module-setup.sh | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/modules.d/90lvm/module-setup.sh b/modules.d/90lvm/module-setup.sh
index 22186f4..e8416ca 100755
--- a/modules.d/90lvm/module-setup.sh
+++ b/modules.d/90lvm/module-setup.sh
@@ -3,7 +3,6 @@
 # ex: ts=8 sw=4 sts=4 et filetype=sh
 
 check() {
-    local _rootdev _activated
     # No point trying to support lvm if the binaries are missing
     type -P lvm >/dev/null || return 1
 
@@ -25,6 +24,8 @@ depends() {
 
 install() {
     local _i
+    local _needthin
+    local _activated
     inst lvm
 
     check_lvm() {
@@ -39,6 +40,10 @@ install() {
             fi
             push _activated "${DM_VG_NAME}/${DM_LV_NAME}"
         fi
+        if ! [[ $_needthin ]]; then
+            [[ $(lvs --noheadings -o segtype $1) == *thin* ]] && _needthin=1
+        fi
+
         return 0
     }
 
@@ -65,5 +70,10 @@ install() {
     inst_hook cmdline 30 "$moddir/parse-lvm.sh"
 
     inst_libdir_file "libdevmapper-event-lvm*.so"
+
+    if [[ $_needthin ]]; then
+        dracut_install -o thin_dump thin_restore thin_check
+    fi
+
 }