summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGunnar Wolf <gwolf@gwolf.org>2023-03-03 09:32:39 -0600
committerLars Wirzenius <liw@liw.fi>2023-04-07 07:51:14 +0000
commit5b91eb58673d43e27523877816169b14e1ab6dfc (patch)
tree5fa9499c1a512f11fe358fdb4d66ae20062ace6d
parentc5ca7edc382e9bfbdf5dd36ba9ebe02d23af8e58 (diff)
downloadvmdb2-5b91eb58673d43e27523877816169b14e1ab6dfc.tar.gz
When initializing an ext4 filesystem, omit the large_dir and metadata_csum_seed flags (issue #69)
-rw-r--r--vmdb/plugins/mkfs_plugin.py11
1 files changed, 11 insertions, 0 deletions
diff --git a/vmdb/plugins/mkfs_plugin.py b/vmdb/plugins/mkfs_plugin.py
index 7bb32b6..f0bef3b 100644
--- a/vmdb/plugins/mkfs_plugin.py
+++ b/vmdb/plugins/mkfs_plugin.py
@@ -51,6 +51,17 @@ class MkfsStepRunner(vmdb.StepRunnerInterface):
cmd.append("-L")
cmd.append(label)
+ # Ext4 filesystem features large_dir and metadata_csum_seed
+ # are known to make versions of GRUB older than 2.06-8 unable
+ # to boot. Keep this around at least until it is no longer
+ # likely enough(?) users will try to build older target
+ # systems.
+ if fstype == "ext4":
+ cmd.append("-O")
+ cmd.append("^large_dir")
+ cmd.append("-O")
+ cmd.append("^metadata_csum_seed")
+
options = values["options"] or None
if options:
for opt in options.split(" "):