Sorry for the late response... I’m working this week on a selftest for the case fixed by this patch.

Meanwhile, I was focused on another aspect related to this patch. Our client reported different behavior when copying complex directory structures onto a WIC image using different servers.

It appears that the issue is related to the debugfs version (e2fsprogs package). On Ubuntu 24.04 with e2fsprogs 4.17, all files are copied correctly, while on Ubuntu 20.04 with e2fsprogs 1.45, the copy operation fails to copy all files and does not create all directories. This failure is silent, with no error reported by debugfs.

I tried several approaches to solve this (splitting the command list in max 100 instances and calling debugfs 1.45 multiple times), but without success. For our client, we decided to add a debugfs version check in wic code and to add a warning if the version is < 1.47. On those specific servers, they will use wic with the -n/--native-sysroot option, pointing to a scarthgap SDK that contains 1.47 version of the e2fsprogs package.

How should we handle this exception? This was fixed in newer debugfs version, but should we add a debugfs version warning when broken version of debugfs is used on host?

Regards,
Daniel
------------------------------------------------------------------------
*From:* Ross Burton <[email protected]>
*Sent:* Monday, October 6, 2025 11:08 PM
*To:* Dragomir, Daniel <[email protected]>
*Cc:* [email protected] <[email protected]> *Subject:* Re: [OE-core][PATCH] wic/engine: fix copying directories into wic image with ext* partition
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know the content is safe.

On 3 Oct 2025, at 21:31, Dragomir, Daniel via lists.openembedded.org <[email protected]> wrote:
>
> wic uses debugfs to write on ext* partitions, but debugfs can only
> write to the current working directory and it cannot copy complete
> directory trees. Running 'wic ls' on a copied directory show this:
>    -l: Ext2 inode is not a directory
>
> Fix this by creating a command list for debugfs (-f parameter) when
> recursive parsing the host directory in order to create a similar
> directory structure (mkdir) and copy files (write) on each level
> into the destination directory from the wic's ext* partition.

This is great, but could you please add a test case to the wic selftests to exercise this and ensure it doesn’t break in the future?

Thanks,
Ross
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#228042): 
https://lists.openembedded.org/g/openembedded-core/message/228042
Mute This Topic: https://lists.openembedded.org/mt/115585333/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to