Re: [PATCH] ubifs: Add freeze support

From: Richard Weinberger
Date: Tue May 30 2017 - 03:51:14 EST


Hyunchul,

Am 30.05.2017 um 04:37 schrieb Hyunchul Lee:
>> UBIFS is designed to be power-cut tolerant.
>> So, UBIFS must not corrupt in any case.
>>
>> Which failure are you facing?
>>
>> I have the feeling that you try to paper over some other issue. :-)
>
> The failure hasn't happened. I wondered the following situation
> should be handled.
>
> ubifs_create
> ubifs_jnl_update
> write_head
> ubifs_tnc_add_nm /* (1) add dentry to TNC */
> ubifs_tnc_add /* (2) add new inode to TNC */
> ubifs_tnc_add /* (3) add parent inode to TNC */
>
> If ubifs_tnc_add(2) fails, TNC would have the index of a dentry
> which points to an invalid inode. So, though ubifs_readdir
> emits the dentry, this inode cannot be accessed. Becasue
> there isn't the index of the inode.

Well, to make ubifs_jnl_update() more robust wrt. such unlikely failures
please rework the journal code.
Adding freeze support does not fix the root cause.
UBIFS treats unrecoverable errors in ubifs_jnl_* since ever as fatal.

Thanks,
//richard