[oe-commits] [openembedded-core] 14/65: wic/partionedfs: Avoid reserving space for non-existing ext. partition

git at git.openembedded.org git at git.openembedded.org
Wed Mar 22 10:13:48 UTC 2017


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 485315dc170e29962a8848db38db73abafd0586e
Author: Kristian Amlie <kristian.amlie at mender.io>
AuthorDate: Fri Mar 10 14:16:27 2017 +0100

    wic/partionedfs: Avoid reserving space for non-existing ext. partition
    
    We don't need the gap that the extended partition occupies if we
    already know that we have less than five partitions. Saves up to one
    full alignment of space.
    
    Signed-off-by: Kristian Amlie <kristian.amlie at mender.io>
    Signed-off-by: Ross Burton <ross.burton at intel.com>
---
 scripts/lib/wic/plugins/imager/direct.py | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/scripts/lib/wic/plugins/imager/direct.py b/scripts/lib/wic/plugins/imager/direct.py
index 235eb24..7d38ab3 100644
--- a/scripts/lib/wic/plugins/imager/direct.py
+++ b/scripts/lib/wic/plugins/imager/direct.py
@@ -344,6 +344,10 @@ class PartitionedImage():
 
         logger.debug("Assigning %s partitions to disks", self.ptable_format)
 
+        # The number of primary and logical partitions. Extended partition and
+        # partitions not listed in the table are not included.
+        num_real_partitions = len([p for p in self.partitions if not p.no_table])
+
         # Go through partitions in the order they are added in .ks file
         for num in range(len(self.partitions)):
             part = self.partitions[num]
@@ -369,7 +373,7 @@ class PartitionedImage():
                 # Skip one sector required for the partitioning scheme overhead
                 self.offset += overhead
 
-            if self.realpart > 3:
+            if self.realpart > 3 and num_real_partitions > 4:
                 # Reserve a sector for EBR for every logical partition
                 # before alignment is performed.
                 if self.ptable_format == "msdos":
@@ -408,7 +412,7 @@ class PartitionedImage():
 
             if self.ptable_format == "msdos":
                 # only count the partitions that are in partition table
-                if len([p for p in self.partitions if not p.no_table]) > 4:
+                if num_real_partitions > 4:
                     if self.realpart > 3:
                         part.type = 'logical'
                         part.num = self.realpart + 1

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list