mirror of
https://git.yoctoproject.org/poky
synced 2026-02-20 08:29:42 +01:00
wic: use sparse_copy to copy partitions
Copied partition images into final partitioned image using sparse_copy API. This method preserves sparseness of the final image. It also makes wic much faster, as unmapped blocks of the partition images are not copied. [YOCTO #9099] (From OE-Core rev: 7f21427aca5df81d8881027fd98f71b821cf31d7) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
4b971568e1
commit
db9557cc46
@@ -22,6 +22,7 @@ import os
|
||||
from wic import msger
|
||||
from wic.utils.errors import ImageError
|
||||
from wic.utils.oe.misc import exec_cmd, exec_native_cmd
|
||||
from wic.filemap import sparse_copy
|
||||
|
||||
# Overhead of the MBR partitioning scheme (just one sector)
|
||||
MBR_OVERHEAD = 1
|
||||
@@ -343,10 +344,7 @@ class Image(object):
|
||||
source = part['source_file']
|
||||
if source:
|
||||
# install source_file contents into a partition
|
||||
cmd = "dd if=%s of=%s bs=%d seek=%d count=%d conv=notrunc" % \
|
||||
(source, image_file, self.sector_size,
|
||||
part['start'], part['size'])
|
||||
exec_cmd(cmd)
|
||||
sparse_copy(source, image_file, part['start'] * self.sector_size)
|
||||
|
||||
msger.debug("Installed %s in partition %d, sectors %d-%d, "
|
||||
"size %d sectors" % \
|
||||
|
||||
Reference in New Issue
Block a user