UBIFS defaults?
Hi,
currently, UBIFS checks data CRC on read by default, i.e., the 'chk_data_crc' mount option is the default one. This makes people who apply benchmarks less happy, because they just use the defaults.
Should we make the 'no_chk_data_crc' mount option to be the default instead? The rationale is that people who do care to read the documentation can switch to 'chk_data_crc' if they need, and people who do quick UBIFS evaluation will end up with faster read speed by default.
See this section for more information about the 'no_chk_data_crc' mount
option: http://www.linux-mtd.infradead.org/doc/ubifs.html#L_checksumming
Would be nice to hear UBIFS users' opinion.
Signature · 2 lines
Best Regards, Artem Bityutskiy (Артём Битюцкий)
Quoted 11 lines · Artem Bityutskiy
Hi,
currently, UBIFS checks data CRC on read by default, i.e., the '
chk_data_crc' mount option is the default one. This makes people who apply benchmarks less happy, because they just use the defaults.Should we make the '
no_chk_data_crc' mount option to be the default instead? The rationale is that people who do care to read the documentation can switch to 'chk_data_crc' if they need, and people who do quick UBIFS evaluation will end up with faster read speed by default.
Quoted 4 lines
See this section for more information about the '
no_chk_data_crc' mount
option: http://www.linux-mtd.infradead.org/doc/ubifs.html#L_checksummingWould be nice to hear UBIFS users' opinion.
I'm going to change the default if no one objects.
Signature · 2 lines
Best Regards, Artem Bityutskiy (Артём Битюцкий)
Quoted 13 lines · [email protected] wrote:
Quoted 12 lines · Artem Bityutskiy
Hi,
currently, UBIFS checks data CRC on read by default, i.e., the '
chk_data_crc' mount option is the default one. This makes people who apply benchmarks less happy, because they just use the defaults.Should we make the '
no_chk_data_crc' mount option to be the default instead? The rationale is that people who do care to read the documentation can switch to 'chk_data_crc' if they need, and people who do quick UBIFS evaluation will end up with faster read speed by default.
Quoted 7 lines
Quoted 2 lines
See this section for more information about the '
no_chk_data_crc' mount option:http://www.linux-mtd.infradead.org/doc/ubifs.html#L_checksumming
Quoted 2 lines
Would be nice to hear UBIFS users' opinion.
I'm going to change the default if no one objects.
It sounds OK to me (for my uses), but:
It sounds important, I think you should wait more than 24h for comments.
--
Jon Povey
[email protected]
Racelogic is a limited company registered in England. Registered number 2743719 . Registered Office Unit 10, Swan Business Centre, Osier Way, Buckingham, Bucks, MK18 1TB .
The information contained in this electronic mail transmission is intended by Racelogic Ltd for the use of the named individual or entity to which it is directed and may contain information that is confidential or privileged. If you have received this electronic mail transmission in error, please delete it from your system without copying or forwarding it, and notify the sender of the error by reply email so that the sender's address records can be corrected. The views expressed by the sender of this communication do not necessarily represent those of Racelogic Ltd. Please note that Racelogic reserves the right to monitor e-mail communications passing through its network
Quoted 11 lines · Artem Bityutskiy
Hi,
currently, UBIFS checks data CRC on read by default, i.e., the '
chk_data_crc' mount option is the default one. This makes people who apply benchmarks less happy, because they just use the defaults.Should we make the '
no_chk_data_crc' mount option to be the default instead? The rationale is that people who do care to read the documentation can switch to 'chk_data_crc' if they need, and people who do quick UBIFS evaluation will end up with faster read speed by default.
Quoted 7 lines
See this section for more information about the '
no_chk_data_crc' mount
option: http://www.linux-mtd.infradead.org/doc/ubifs.html#L_checksummingWould be nice to hear UBIFS users' opinion.
From
f7a2d4a6dea3fcec4612aa81baabf8aae0040896Mon Sep 17 00:00:00 2001
From: Artem Bityutskiy <[email protected]>
Date: Thu, 10 Mar 2011 16:26:32 +0200
Subject: [PATCH] UBIFS: do not check data crc by default
Change the default UBIFS behavior WRT data CRC checking. Currently, UBIFS checks data CRC when reading, which slows it down quite a bit, and this is the default option. However, it looks like in average user does not need this feature and would prefer faster read speed over extra reliability. And this seems to be de-facto standard that file-systems do not check data CRC every time they read from the media.
Thus, make UBIFS default behavior so that it does not check data CRC. This corresponds to the no_chk_data_crc mount option. Those users who need extra protection can always enable it using the chk_data_crc option.
Please, read more information about this feature here:
http://www.linux-mtd.infradead.org/doc/ubifs.html#L_checksumming
--- Documentation/filesystems/ubifs.txt | 4 ++-- fs/ubifs/super.c | 1 + 2 files changed, 3 insertions(+), 2 deletions(-)
Documentation/filesystems/ubifs.txt +2 -2
@@ -82,12 +82,12 @@ Mount options bulk_read read more in one go to take advantage of flash media that read faster sequentially no_bulk_read (*) do not bulk-read -no_chk_data_crc skip checking of CRCs on data nodes in order to +no_chk_data_crc (*) skip checking of CRCs on data nodes in order to improve read performance. Use this option only if the flash media is highly reliable. The effect of this option is that corruption of the contents of a file can go unnoticed. -chk_data_crc (*) do not skip checking CRCs on data nodes +chk_data_crc do not skip checking CRCs on data nodes compr=none override default compressor and set it to "none" compr=lzo override default compressor and set it to "lzo" compr=zlib override default compressor and set it to "zlib"
fs/ubifs/super.c +1 -0
@@ -1985,6 +1985,7 @@ static int ubifs_fill_super(struct super_block *sb, void *data, int silent)INIT_LIST_HEAD (&c->old_buds);INIT_LIST_HEAD (&c->orph_list);INIT_LIST_HEAD (&c->orph_new); + c->no_chk_data_crc =1 ; c->vfs_sb = sb; c->highest_inum =UBIFS_FIRST_INO ;
Signature · 5 lines
1.7.2.3 -- Best Regards, Artem Bityutskiy (Артём Битюцкий)