[BUG] UBIFS corruption on powerpc 32-bit targets
Zhihao Cheng
chengzhihao1 at huawei.com
Thu Feb 12 17:16:26 PST 2026
在 2026/2/12 23:43, Tomas Alvarez Vanoli 写道:
>> The 'sync' syscall will call ubifs_orphan_end_commit if the orhpan list
>> is not empty.
>> ubifs_sync_fs -> ubifs_run_commit -> do_commit -> ubifs_orphan_end_commit
>>
>> In ubifs_create, the new inode will be added into orphan list.
>> ubifs_create -> ubifs_new_inode -> ubifs_add_orphan
>>
>> You can add some debug messages to check which condition is broken.
>
> Alright, it was some user error :) I am able to reproduce it consistently now.
>
> We will have to analyze what to do in the end about this, because we have no
> control of what versions are being ran in what order in the field. Backwards
> compatibility and being able to switch versions is important. Since this
> volume does not use encryption and 3af2d3a8c56fe7dc24f60c4df0ab85b7ac941902
> seems to be fixing a bug related only to encryption, we might just revert the
> commit for the affected boards. Hopefully this will not generate other
> unforseen consecuences.
If the xattr(selinux,encryption,user_xattr) is not enabled,
3af2d3a8c56fe7dc24f60c4df0ab85b7ac941902 can be reverted. But the
problem may still happend if application links tempfile.
>
> I'll submit the fixes for mtd-utils tomorrow.
Thanks. I'll take a week-long vacation statrting from 2.15. Therefore, I
might not be able to respond in time.
>
> Thanks for all the help
> Best Regards,
> Tomas.
>
More information about the linux-mtd
mailing list