Add support for tuning partitions
Allow a simple mechanism to call tune2fs to modify an existing
partition without reformatting.
Bug: 18430740
Change-Id: I9210355b6bfec74d002d1f40b930330740f379a5
diff --git a/tools/releasetools/edify_generator.py b/tools/releasetools/edify_generator.py
index 7d318a3..e52c264 100644
--- a/tools/releasetools/edify_generator.py
+++ b/tools/releasetools/edify_generator.py
@@ -201,6 +201,17 @@
"""Log a message to the screen (if the logs are visible)."""
self.script.append('ui_print("%s");' % (message,))
+ def TunePartition(self, partition, *options):
+ fstab = self.info.get("fstab", None)
+ if fstab:
+ p = fstab[partition]
+ if (p.fs_type not in ( "ext2", "ext3", "ext4")):
+ raise ValueError("Partition %s cannot be tuned\n" % (partition,))
+ self.script.append('tune2fs(' +
+ "".join(['"%s", ' % (i,) for i in options]) +
+ '"%s") || abort("Failed to tune partition %s");'
+ % ( p.device,partition));
+
def FormatPartition(self, partition):
"""Format the given partition, specified by its mount point (eg,
"/system")."""