[gnome-continuous-yocto/gnomeostree-3.28-rocko: 5333/8267] image_types: perform fsck on created ext image
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 5333/8267] image_types: perform fsck on created ext image
- Date: Sun, 17 Dec 2017 03:17:34 +0000 (UTC)
commit a2d1d525f0f84c10e9ac53a2c87967fa05eae260
Author: Enrico Jorns <ejo pengutronix de>
Date: Fri Mar 24 12:15:02 2017 +0100
image_types: perform fsck on created ext image
When performing a file system check, the image created with mkfs will
trigger Pass 3A ('Optimizing directories') which turns the file system
into state "changed" (EXT2_FLAG_CHANGED).
This will let fsck request a reboot by setting the return code flag "2".
The result of this is that each ext-image built with oe-core will
trigger a reboot during the first time an fsck is triggered.
A common case where this might occur is when fsck detects having
a future superblock write time. This always happens when booting a
newly created ext4 rootfs with a target that does not have a recent time
set.
This patch moves the initial fsck run that performs the optimization
from the target to the host system and thus prevents the target from
performing an avoidable reboot.
(From OE-Core rev: a93d005934192402d7cceb36016b25b7d0c65547)
Signed-off-by: Enrico Jorns <ejo pengutronix de>
Signed-off-by: Ulrich Ölmann <uol pengutronix de>
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
meta/classes/image_types.bbclass | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index 99adeb3..7749b00 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -74,6 +74,8 @@ oe_mkext234fs () {
# Create a sparse image block
dd if=/dev/zero of=${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype seek=$ROOTFS_SIZE
count=$COUNT bs=1024
mkfs.$fstype -F $extra_imagecmd ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype -d
${IMAGE_ROOTFS}
+ # Error codes 0-3 indicate successfull operation of fsck (no errors or errors corrected)
+ fsck.$fstype -pvfD ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype || [ $? -le 3 ]
}
IMAGE_CMD_ext2 = "oe_mkext234fs ext2 ${EXTRA_IMAGECMD}"
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]