UBIFS performance with no_chk_data_crc option

Artem Bityutskiy dedekind at infradead.org
Tue Jan 27 07:35:12 EST 2009


On Tue, 2009-01-27 at 13:09 +1300, Reuben Dowle wrote:
> It seems to me that enabling the no_chk_data_crc option actually causes
> SLOWER read performance. I get these results:

Reuben,

thanks for noticing this. We've fixed the issue. You may find the fix in
the linux-next branch of the ubifs-2.6.git tree:

commit 6f7ab6d458bbfc2f55d295fa3e6b9e69cdb1d517
Author: Artem Bityutskiy <Artem.Bityutskiy at nokia.com>
Date:   Tue Jan 27 16:12:31 2009 +0200

    UBIFS: fix no_chk_data_crc

    When data CRC checking is disabled, UBIFS returns incorrect return
    code from the 'try_read_node()' function (0 instead of 1, which means
    CRC error), which make the caller re-read the data node again, but using
    a different code patch, so the second read is fine. Thus, we read the
    same node twice. And the result of this is that UBIFS is slower
    with no_chk_data_crc option than it is with chk_data_crc option.
    This patches fixes the problem.

    Reported-by: Reuben Dowle <Reuben.Dowle at navico.com>
    Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy at nokia.com>

This patch has also been pushed to all UBIFS back-port git trees.

-- 
Best regards,
Artem Bityutskiy (Битюцкий Артём)




More information about the linux-mtd mailing list