* [Buildroot] [PATCH v2] imx/genimage: Place the rootfs at a proper offset when BR2_LINUX_KERNEL_INSTALL_TARGET=y
@ 2021-11-13 21:42 Fabio Estevam
2021-11-14 14:15 ` Thomas Petazzoni
2021-11-17 22:25 ` Peter Korsgaard
0 siblings, 2 replies; 3+ messages in thread
From: Fabio Estevam @ 2021-11-13 21:42 UTC (permalink / raw)
To: buildroot; +Cc: Fabio Estevam, yann.morin.1998, thomas.petazzoni
Currently, when BR2_LINUX_KERNEL_INSTALL_TARGET=y is selected, issuing
a "saveenv" command in the U-Boot prompt may lead to rootfs corruption.
When BR2_LINUX_KERNEL_INSTALL_TARGET is not selected, then
board/freescale/common/imx/genimage.cfg.template is used as per the logic
inside board/freescale/common/imx/post-image.sh.
board/freescale/common/imx/genimage.cfg.template correctly puts the
rootfs at a safe offset.
With BR2_LINUX_KERNEL_INSTALL_TARGET=y, then
board/freescale/common/imx/genimage.cfg.template_no_boot_part or
board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl
are used and no offset to the rootfs is given, which may cause U-Boot
environment area to write into the rootfs area, causing the rootfs
corruption.
Avoid this problem by placing the rootfs at an 8MB offset, just like
it is done in board/freescale/common/imx/genimage.cfg.
Tested on a imx6qp-wandboard and also on a custom imx6ull based board.
"saveenv" does not corrupt the rootfs anymore after this change.
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
Changes since v1:
- Improve commit log (Yann)
board/freescale/common/imx/genimage.cfg.template_no_boot_part | 1 +
.../freescale/common/imx/genimage.cfg.template_no_boot_part_spl | 1 +
2 files changed, 2 insertions(+)
diff --git a/board/freescale/common/imx/genimage.cfg.template_no_boot_part b/board/freescale/common/imx/genimage.cfg.template_no_boot_part
index edc34d0fcd12..b8fa43210b91 100644
--- a/board/freescale/common/imx/genimage.cfg.template_no_boot_part
+++ b/board/freescale/common/imx/genimage.cfg.template_no_boot_part
@@ -11,5 +11,6 @@ image sdcard.img {
partition rootfs {
partition-type = 0x83
image = "rootfs.ext2"
+ offset = 8M
}
}
diff --git a/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl b/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl
index c29032572aef..ef015918a5b2 100644
--- a/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl
+++ b/board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl
@@ -26,5 +26,6 @@ image sdcard.img {
partition rootfs {
partition-type = 0x83
image = "rootfs.ext2"
+ offset = 8M
}
}
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH v2] imx/genimage: Place the rootfs at a proper offset when BR2_LINUX_KERNEL_INSTALL_TARGET=y
2021-11-13 21:42 [Buildroot] [PATCH v2] imx/genimage: Place the rootfs at a proper offset when BR2_LINUX_KERNEL_INSTALL_TARGET=y Fabio Estevam
@ 2021-11-14 14:15 ` Thomas Petazzoni
2021-11-17 22:25 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni @ 2021-11-14 14:15 UTC (permalink / raw)
To: Fabio Estevam; +Cc: yann.morin.1998, buildroot
On Sat, 13 Nov 2021 18:42:45 -0300
Fabio Estevam <festevam@gmail.com> wrote:
> Currently, when BR2_LINUX_KERNEL_INSTALL_TARGET=y is selected, issuing
> a "saveenv" command in the U-Boot prompt may lead to rootfs corruption.
>
> When BR2_LINUX_KERNEL_INSTALL_TARGET is not selected, then
> board/freescale/common/imx/genimage.cfg.template is used as per the logic
> inside board/freescale/common/imx/post-image.sh.
>
> board/freescale/common/imx/genimage.cfg.template correctly puts the
> rootfs at a safe offset.
>
> With BR2_LINUX_KERNEL_INSTALL_TARGET=y, then
> board/freescale/common/imx/genimage.cfg.template_no_boot_part or
> board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl
> are used and no offset to the rootfs is given, which may cause U-Boot
> environment area to write into the rootfs area, causing the rootfs
> corruption.
>
> Avoid this problem by placing the rootfs at an 8MB offset, just like
> it is done in board/freescale/common/imx/genimage.cfg.
>
> Tested on a imx6qp-wandboard and also on a custom imx6ull based board.
>
> "saveenv" does not corrupt the rootfs anymore after this change.
>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> ---
> Changes since v1:
> - Improve commit log (Yann)
Applied to master, thanks.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH v2] imx/genimage: Place the rootfs at a proper offset when BR2_LINUX_KERNEL_INSTALL_TARGET=y
2021-11-13 21:42 [Buildroot] [PATCH v2] imx/genimage: Place the rootfs at a proper offset when BR2_LINUX_KERNEL_INSTALL_TARGET=y Fabio Estevam
2021-11-14 14:15 ` Thomas Petazzoni
@ 2021-11-17 22:25 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2021-11-17 22:25 UTC (permalink / raw)
To: Fabio Estevam; +Cc: yann.morin.1998, thomas.petazzoni, buildroot
>>>>> "Fabio" == Fabio Estevam <festevam@gmail.com> writes:
> Currently, when BR2_LINUX_KERNEL_INSTALL_TARGET=y is selected, issuing
> a "saveenv" command in the U-Boot prompt may lead to rootfs corruption.
> When BR2_LINUX_KERNEL_INSTALL_TARGET is not selected, then
> board/freescale/common/imx/genimage.cfg.template is used as per the logic
> inside board/freescale/common/imx/post-image.sh.
> board/freescale/common/imx/genimage.cfg.template correctly puts the
> rootfs at a safe offset.
> With BR2_LINUX_KERNEL_INSTALL_TARGET=y, then
> board/freescale/common/imx/genimage.cfg.template_no_boot_part or
> board/freescale/common/imx/genimage.cfg.template_no_boot_part_spl
> are used and no offset to the rootfs is given, which may cause U-Boot
> environment area to write into the rootfs area, causing the rootfs
> corruption.
> Avoid this problem by placing the rootfs at an 8MB offset, just like
> it is done in board/freescale/common/imx/genimage.cfg.
> Tested on a imx6qp-wandboard and also on a custom imx6ull based board.
> "saveenv" does not corrupt the rootfs anymore after this change.
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> ---
> Changes since v1:
> - Improve commit log (Yann)
Committed to 2021.02.x and 2021.08.x, thanks.
--
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-11-17 22:25 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-13 21:42 [Buildroot] [PATCH v2] imx/genimage: Place the rootfs at a proper offset when BR2_LINUX_KERNEL_INSTALL_TARGET=y Fabio Estevam
2021-11-14 14:15 ` Thomas Petazzoni
2021-11-17 22:25 ` Peter Korsgaard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.