summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2014-07-07 02:33:58 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-07-10 17:38:35 +0100
commit1cb9f7b00b5ede62a9546c39d798c876775b08c0 (patch)
tree1126f320f5b8d4c8f3419556347b048031b1bace
parentd8364371b2987d1396cfb85658565096ff72a2cd (diff)
downloadpoky-1cb9f7b00b5ede62a9546c39d798c876775b08c0.tar.gz
lib/oe/image.py: check the rootfs size against IMAGE_ROOTFS_MAXSIZE
* Check the rootfs size against IMAGE_ROOTFS_MAXSIZE (if set) * Add comments for IMAGE_ROOTFS_SIZE to not confuse with IMAGE_ROOTFS_MAXSIZE [YOCTO #2610] (From OE-Core rev: 6acd4fc8d5e642b5c6c75fcc40dd8f37caf7ddcf) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/conf/bitbake.conf4
-rw-r--r--meta/lib/oe/image.py8
2 files changed, 12 insertions, 0 deletions
diff --git a/meta/conf/bitbake.conf b/meta/conf/bitbake.conf
index 311e9a04c4..f4870d52a9 100644
--- a/meta/conf/bitbake.conf
+++ b/meta/conf/bitbake.conf
@@ -688,6 +688,10 @@ IMAGE_FSTYPES ?= "tar.gz"
688INITRAMFS_FSTYPES ?= "cpio.gz" 688INITRAMFS_FSTYPES ?= "cpio.gz"
689DEFAULT_TASK_PROVIDER ?= "packagegroup-base" 689DEFAULT_TASK_PROVIDER ?= "packagegroup-base"
690MACHINE_TASK_PROVIDER ?= "${DEFAULT_TASK_PROVIDER}" 690MACHINE_TASK_PROVIDER ?= "${DEFAULT_TASK_PROVIDER}"
691
692# The size in Kbytes for the generated image if it is larger than
693# the required size (du -ks IMAGE_ROOTFS * IMAGE_OVERHEAD_FACTOR),
694# and no effect if less than it.
691IMAGE_ROOTFS_SIZE ?= "65536" 695IMAGE_ROOTFS_SIZE ?= "65536"
692 696
693# Forcefully set CACHE now so future changes to things like 697# Forcefully set CACHE now so future changes to things like
diff --git a/meta/lib/oe/image.py b/meta/lib/oe/image.py
index c9b9033132..354a676f42 100644
--- a/meta/lib/oe/image.py
+++ b/meta/lib/oe/image.py
@@ -144,6 +144,7 @@ class Image(ImageDepGraph):
144 overhead_factor = float(self.d.getVar('IMAGE_OVERHEAD_FACTOR', True)) 144 overhead_factor = float(self.d.getVar('IMAGE_OVERHEAD_FACTOR', True))
145 rootfs_req_size = int(self.d.getVar('IMAGE_ROOTFS_SIZE', True)) 145 rootfs_req_size = int(self.d.getVar('IMAGE_ROOTFS_SIZE', True))
146 rootfs_extra_space = eval(self.d.getVar('IMAGE_ROOTFS_EXTRA_SPACE', True)) 146 rootfs_extra_space = eval(self.d.getVar('IMAGE_ROOTFS_EXTRA_SPACE', True))
147 rootfs_maxsize = self.d.getVar('IMAGE_ROOTFS_MAXSIZE', True)
147 148
148 output = subprocess.check_output(['du', '-ks', 149 output = subprocess.check_output(['du', '-ks',
149 self.d.getVar('IMAGE_ROOTFS', True)]) 150 self.d.getVar('IMAGE_ROOTFS', True)])
@@ -158,6 +159,13 @@ class Image(ImageDepGraph):
158 base_size += rootfs_alignment - 1 159 base_size += rootfs_alignment - 1
159 base_size -= base_size % rootfs_alignment 160 base_size -= base_size % rootfs_alignment
160 161
162 # Check the rootfs size against IMAGE_ROOTFS_MAXSIZE (if set)
163 if rootfs_maxsize:
164 rootfs_maxsize_int = int(rootfs_maxsize)
165 if base_size > rootfs_maxsize_int:
166 bb.fatal("The rootfs size %d(K) overrides the max size %d(K)" % \
167 (base_size, rootfs_maxsize_int))
168
161 return base_size 169 return base_size
162 170
163 def _create_symlinks(self, subimages): 171 def _create_symlinks(self, subimages):