Release of UBIL: ubi with log

Brijesh Singh brijesh.s.singh at gmail.com
Thu Apr 1 15:06:21 EDT 2010


On Thu, Apr 1, 2010 at 5:29 PM, Corentin Chary <corentin.chary at gmail.com> wrote:
> On Thu, Apr 1, 2010 at 1:14 PM, Brijesh Singh <brijesh.s.singh at gmail.com> wrote:
>> Hi,
>>
>> On Wed, Mar 31, 2010 at 6:27 PM, Corentin Chary
>> <corentin.chary at gmail.com> wrote:
>>> On Tue, Mar 2, 2010 at 8:45 PM, Artem Bityutskiy <dedekind1 at gmail.com> wrote:
>>>> On Fri, 2010-02-26 at 18:28 +0530, Brijesh Singh wrote:
>>>>> Hi,
>>>>>  It gives me great pleasure in sharing UBIL: ubi with log.  We have
>>>>> added logging functionality to ubi for reducing mount time.
>>>>> UBIL uses the "same source base of UBI". The logging functionality can
>>>>> be added or removed at compile time using "make menuconfig option".
>>>>>
>>>>> We have seen mount time reduction of 50% in 1GB NAND. We are expecting
>>>>> even better results for larger flash memories.
>>>>>
>>>>> The source code of UBIL can be found in the following git tree:
>>>>> http://git.infradead.org/users/brijesh/ubi-2.6.git
>>>>>
>>>>
>>>> Sounds interesting! However, I'm out of office till end of March, and
>>>> won't be able to look closely at this. But hopefully others will try it.
>>>>
>>>
>>> Hi,
>>> Didn't took the time  to read the code, I'll try to do so soon.
>>> Could you tell us more about what you did and how it works ?
>>> Is it similar to yaffs checkpoints ? When are the log written ?
>> Not sure with yaffs checkpoints.
>
> Yaffs works by writting it's internal memory representation on the
> nand while unmounting, so it seems to be different.

Right now, all the valid log is kept in buffer. This is written at
umount/ when log is full.
However, I have got some code that dumps ram data structure(eba table
and wl trees). Right now it works only when
meta data is less than single block. This is certainly best approach,
and is much faster.

>> But commit writes only valid log entries.
>> Log is written when an eba mapping is changed or when ec of peb is changed.
>
> How this affect write performances ?
RIght now, as long as there is space in log, read/write performance is
the same.
The results we got, are almost same as old UBI. I will update the
results on monday,

>>> What will happen if you try to mount something that used UBIL with a
>>> kernel without UBIL support ?
>> It won't work.
>
> Could it work by using a separate UBI volume with the right flag ? Are
> the log per-volume ?
No. Log is per UBI instance. It is not per volume. I am not sure why
would this be necessary.
Any suggestion?



More information about the linux-mtd mailing list