[Buildroot] [git commit] support/testing: test_ubi: allow to boot several times using the same ubi image.
From: Yann E. MORIN <hidden>
Date: 2021-10-17 19:53:07
Subsystem:
the rest · Maintainer:
Linus Torvalds
commit: https://git.buildroot.net/buildroot/commit/?id=e11c3cbe26a945497524aba7dade42bd1efbadd0 branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master Since the ubi/ubifs test has been introduced, it's not possible to boot the same ubi image twice [1]: "TODO: if you boot Qemu twice on the same UBI image, it fails to attach the image the second time, with "ubi0 error: ubi_read_volume_table: the layout volume was not found"." For some reason, the kernel corrupt the ubi image if the ubifs rootfs is mounted with write access. Use a custom config file to mount the rootfs readonly (vol_type=static). Doing so requires to add the flash size (vol_size=64MiB). At least it allows to boot several times the same ubi image. [1] bf4a6490e4ee70f0a46e588602995ba34e6c872a Signed-off-by: Romain Naour <redacted> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Signed-off-by: Yann E. MORIN <redacted> --- support/testing/tests/fs/test_ubi.py | 9 ++++----- support/testing/tests/fs/test_ubi/ubinize_qemu_pflash_cfi01.cfg | 8 ++++++++ 2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/support/testing/tests/fs/test_ubi.py b/support/testing/tests/fs/test_ubi.py
index 7c687c1982..564a436d42 100644
--- a/support/testing/tests/fs/test_ubi.py
+++ b/support/testing/tests/fs/test_ubi.py@@ -13,12 +13,11 @@ class TestUbi(infra.basetest.BRTest): BR2_TARGET_ROOTFS_UBI=y BR2_TARGET_ROOTFS_UBI_PEBSIZE=0x40000 BR2_TARGET_ROOTFS_UBI_SUBSIZE=1 - """ + BR2_TARGET_ROOTFS_UBI_USE_CUSTOM_CONFIG=y + BR2_TARGET_ROOTFS_UBI_CUSTOM_CONFIG_FILE="{}" + """.format( + infra.filepath("tests/fs/test_ubi/ubinize_qemu_pflash_cfi01.cfg")) - # TODO: if you boot Qemu twice on the same UBI image, it fails to - # attach the image the second time, with "ubi0 error: - # ubi_read_volume_table: the layout volume was not found". - # To be investigated. def test_run(self): img = os.path.join(self.builddir, "images", "rootfs.ubi") out = infra.run_cmd_on_host(self.builddir, ["file", img])
diff --git a/support/testing/tests/fs/test_ubi/ubinize_qemu_pflash_cfi01.cfg b/support/testing/tests/fs/test_ubi/ubinize_qemu_pflash_cfi01.cfg
new file mode 100644
index 0000000000..52dd5f0007
--- /dev/null
+++ b/support/testing/tests/fs/test_ubi/ubinize_qemu_pflash_cfi01.cfg@@ -0,0 +1,8 @@ +[ubifs] +mode=ubi +vol_id=0 +vol_type=static +vol_name=rootfs +vol_alignment=1 +vol_size=64MiB +image=BR2_ROOTFS_UBIFS_PATH
_______________________________________________ buildroot mailing list buildroot@buildroot.org https://lists.buildroot.org/mailman/listinfo/buildroot