Add support for tuning partitions

Allow a simple mechanism to call tune2fs to modify an existing
partition without reformatting.

Bug: 18430740
Change-Id: I9210355b6bfec74d002d1f40b930330740f379a5
This commit is contained in:
Michael Runge 2014-11-21 00:46:03 -08:00
parent 8c657dc214
commit 3e286645ba
1 changed files with 11 additions and 0 deletions

View File

@ -201,6 +201,17 @@ class EdifyGenerator(object):
"""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")."""