From b0f36bea3b9393da8d6327e104548d581df5b850 Mon Sep 17 00:00:00 2001 From: Robert Baldyga Date: Wed, 9 Dec 2020 12:33:46 +0100 Subject: [PATCH] utils: Exclude Open CAS modules from dracut initramfs image Open CAS modules are not intended to be included into initramfs, and so CAS upgrade does not trigger initramfs rebuild. This may lead to loading old Open CAS modules if they were included into initramfs image. Explicitly excluding them from initramfs image effectively addressed this issue. Signed-off-by: Robert Baldyga --- utils/Makefile | 5 +++++ utils/etc/dracut.conf.d/opencas.conf | 1 + utils/pckgen.d/rpm/CAS_NAME.spec | 1 + 3 files changed, 7 insertions(+) create mode 100644 utils/etc/dracut.conf.d/opencas.conf diff --git a/utils/Makefile b/utils/Makefile index 04039ff..8dc24ef 100644 --- a/utils/Makefile +++ b/utils/Makefile @@ -35,6 +35,9 @@ install_files: @install -m 755 casctl $(DESTDIR)$(CASCTL_DIR)/casctl @install -m 755 open-cas-loader $(DESTDIR)$(CASCTL_DIR)/open-cas-loader + @mkdir -p $(DESTDIR)/etc/dracut.conf.d/ + @install -m 644 etc/dracut.conf.d/opencas.conf $(DESTDIR)/etc/dracut.conf.d/opencas.conf + @mkdir -p $(DESTDIR)/sbin @ln -fs $(CASCTL_DIR)/casctl $(DESTDIR)/sbin/casctl @@ -60,6 +63,8 @@ uninstall: @rm $(DESTDIR)$(CASCTL_DIR)/open-cas-loader @rm -rf $(DESTDIR)$(CASCTL_DIR) + @rm $(DESTDIR)/etc/dracut.conf.d/opencas.conf + @rm $(DESTDIR)/sbin/casctl @rm $(DESTDIR)/usr/share/man/man8/casctl.8 diff --git a/utils/etc/dracut.conf.d/opencas.conf b/utils/etc/dracut.conf.d/opencas.conf new file mode 100644 index 0000000..23955bf --- /dev/null +++ b/utils/etc/dracut.conf.d/opencas.conf @@ -0,0 +1 @@ +omit_drivers+=" cas_disk cas_cache" diff --git a/utils/pckgen.d/rpm/CAS_NAME.spec b/utils/pckgen.d/rpm/CAS_NAME.spec index 7a2dadc..b560dde 100644 --- a/utils/pckgen.d/rpm/CAS_NAME.spec +++ b/utils/pckgen.d/rpm/CAS_NAME.spec @@ -108,6 +108,7 @@ fi %dir /var/lib/opencas %config /etc/opencas/opencas.conf /etc/opencas/ioclass-config.csv +/etc/dracut.conf.d/opencas.conf /var/lib/opencas/cas_version /lib/opencas/casctl /lib/opencas/open-cas-loader