<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://kerneltrap.org"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>KernelTrap - fsck</title>
 <link>http://kerneltrap.org/taxonomy/term/233/0</link>
 <description></description>
 <language>en-local</language>
<item>
 <title>Btrfs Online Resizing, Ext3 Conversion, and More</title>
 <link>http://kerneltrap.org/Linux/Btrfs_Online_Resizing_Ext3_Conversion_and_More</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Chris Mason &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-fsdevel/2008/1/15/570314&quot;&gt;announced version 0.10&lt;/a&gt; of his new Btrfs filesystem, listing the following new features,  &quot;&lt;i&gt;explicit back references, online resizing (including shrinking), in place conversion from Ext3 to Btrfs, data=ordered support, mount options to disable data COW and checksumming, and barrier support for sata and IDE drives&lt;/i&gt;&quot;.  He noted that the disk format in v0.10 has changed, and is not compatible with the v0.9 disk format.  Regarding back reference support, Chris explained, &quot;&lt;i&gt;the core of this release is explicit back references for all metadata blocks, data extents, and directory items.  These are a crucial building block for future features such as online fsck and migration between devices.  The back references are verified during deletes, and the extent back references are checked by the existing offline fsck tool.&lt;/i&gt;&quot;  He then detailed the new Ext3 to Btrfs conversion utility:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;The conversion program uses the copy on write nature of Btrfs to preserve the original Ext3 FS, sharing the data blocks between Btrfs and Ext3 metadata.  Btrfs metadata is created inside the free space of the Ext3 filesystem, and it is possible to either make the conversion permanent (reclaiming the space used by Ext3) or roll back the conversion to the original Ext3 filesystem.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/Linux/Btrfs_Online_Resizing_Ext3_Conversion_and_More&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/Linux/Btrfs_Online_Resizing_Ext3_Conversion_and_More#comments</comments>
 <category domain="http://kerneltrap.org/Btrfs">Btrfs</category>
 <category domain="http://kerneltrap.org/Chris_Mason">Chris Mason</category>
 <category domain="http://kerneltrap.org/ext3">ext3</category>
 <category domain="http://kerneltrap.org/filesystem">filesystem</category>
 <category domain="http://kerneltrap.org/fsck">fsck</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Thu, 17 Jan 2008 15:06:20 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">15252 at http://kerneltrap.org</guid>
</item>
<item>
 <title>Speeding Up Fsck With Metaclustering</title>
 <link>http://kerneltrap.org/Linux/Speeding_Up_Fsck_With_Metaclustering</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;&lt;i&gt;This patch speeds up e2fsck on Ext3 significantly using a technique called Metaclustering,&lt;/i&gt;&quot; &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2008/1/13/563282&quot;&gt;stated Abhishek Rai&lt;/a&gt;.  In an &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2007/11/16/419861&quot;&gt;earlier thread&lt;/a&gt; he quantified this claim, &quot;&lt;i&gt;this patch will help reduce full fsck time for ext3. I&#039;ve seen 50-65% reduction in fsck time when using this patch on a near-full file system. With some fsck optimizations, this figure becomes 80%.&lt;/i&gt;&quot;  Most criticism so far has been in regards to formatting issues with the patch preventing it from being easily tested, resolved in the latest postings.  It was also cautioned that the patch affects a significant amount of ext3 code, and thus will require very heavy testing.  Abhishek described how the patch offers its significant gains for e2fsck:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;Metaclustering refers to storing indirect blocks in clusters on a per-group basis instead of spreading them out along with the data blocks. This makes e2fsck faster since it can now read and verify all indirect blocks without much seeks. However, done naively it can affect IO performance, so we have built in some optimizations to prevent that from happening. Finally, the benefit in fsck performance is noticeable only when indirect block reads are the bottleneck which is not always the case, but quite frequently is, in the case of moderate to large disks with lot of data on them. However, when indirect block reads are not the bottleneck, e2fsck is generally quite fast anyway to warrant any performance improvements.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/Linux/Speeding_Up_Fsck_With_Metaclustering&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/Linux/Speeding_Up_Fsck_With_Metaclustering#comments</comments>
 <category domain="http://kerneltrap.org/taxonomy/term/1161">Abhishek Rai</category>
 <category domain="http://kerneltrap.org/taxonomy/term/954">e2fsck</category>
 <category domain="http://kerneltrap.org/filesystem">filesystem</category>
 <category domain="http://kerneltrap.org/fsck">fsck</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/taxonomy/term/1160">metaclustering</category>
 <category domain="http://kerneltrap.org/performance">performance</category>
 <category domain="http://kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Mon, 14 Jan 2008 13:52:15 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">15224 at http://kerneltrap.org</guid>
</item>
<item>
 <title>ext4 2.6.24 Merge Plans</title>
 <link>http://kerneltrap.org/Linux/ext4_2.6.24_Merge_Plans</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;&lt;i&gt;I&#039;ve just released the 2.6.23-rc9-ext4-1.  It collapses some patches in preparation for pushing them to Linus, and adds some of the cleanup patches that had been incorporated into Andrew&#039;s broken-out-2007-10-01-04-09 series,&lt;/i&gt;&quot; &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2007/10/4/329019&quot;&gt;announced Theodore Ts&#039;o&lt;/a&gt;.  He also noted of &lt;a href=&quot;http://git.kernel.org/?p=linux/kernel/git/tytso/ext4.git;a=summary&quot;&gt;the current ext4 git tree&lt;/a&gt;, &quot;&lt;i&gt;it also has some new development patches in the unstable (not yet ready to push to mainline) portion of the patch series.&lt;/i&gt;&quot;  In an &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2007/10/4/328999&quot;&gt;earlier thread&lt;/a&gt; Theodore posted a series of patches specifically intended for inclusion in the upcoming 2.6.24 kernel.  Included in the patch series was a patch for &lt;a href=&quot;http://kerneltrap.org/Linux/Improving_fsck_Speeds_in_ext4&quot;&gt;improving fsck performance&lt;/a&gt;, &quot;&lt;i&gt;in performance tests testing e2fsck time, we have seen that e2fsck time on ext3 grows linearly with the total number of inodes in the filesytem.  In ext4 with the uninitialized block groups feature, the e2fsck time is constant, based solely on the number of used inodes rather than the total inode count.&lt;/i&gt;&quot;  The patch included an explanation of how the feature works, enabled through a mkfs option:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;With this feature, there is a a high water mark of used inodes for each block group.  Block and inode bitmaps can be uninitialized on disk via a flag in the group descriptor to avoid reading or scanning them at e2fsck time.  A checksum of each group descriptor is used to ensure that corruption in the group descriptor&#039;s bit flags does not cause incorrect operation.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/Linux/ext4_2.6.24_Merge_Plans&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/Linux/ext4_2.6.24_Merge_Plans#comments</comments>
 <category domain="http://kerneltrap.org/ext4">ext4</category>
 <category domain="http://kerneltrap.org/filesystem">filesystem</category>
 <category domain="http://kerneltrap.org/fsck">fsck</category>
 <category domain="http://kerneltrap.org/inode">inode</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/merge_plans">merge plans</category>
 <category domain="http://kerneltrap.org/performance">performance</category>
 <category domain="http://kerneltrap.org/Theodore_Tso">Theodore Ts&#039;o</category>
 <category domain="http://kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Thu, 04 Oct 2007 08:53:36 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">14512 at http://kerneltrap.org</guid>
</item>
<item>
 <title>Improving fsck Speeds in ext4</title>
 <link>http://kerneltrap.org/Linux/Improving_fsck_Speeds_in_ext4</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;&lt;i&gt;In [the first pass] of e2fsck, every inode table in the fileystem is scanned and checked,  regardless of whether it is in use,&lt;/i&gt;&quot; &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2007/9/18/263231&quot;&gt;Avantika Mathur began&lt;/a&gt;.  &quot;&lt;i&gt;This is the most time consuming part of the filesystem check.  The unintialized block group feature can greatly reduce e2fsck time by eliminating checking of uninitialized inodes.&lt;/i&gt;&quot;   She went on to explain how it works, &quot;&lt;i&gt;with this feature, there is a a high water mark of used inodes for each block group.  Block and inode bitmaps can be uninitialized on disk via a flag in the group descriptor to avoid reading or scanning them at e2fsck time.  A checksum of each group descriptor is used to ensure that corruption in the group descriptor&#039;s bit flags does not cause incorrect operation.&lt;/i&gt;&quot;  Avantika attached a graph illustrating the advantage of the patch which she summarized as follows:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;The patches have been stress tested with fsstress and fsx.  In performance  tests testing e2fsck time, we have seen that e2fsck time on ext3 grows linearly with the total number of inodes in the filesytem.  In ext4 with the uninitialized block groups feature, the e2fsck time is constant, based solely on the number of used inodes rather than the total inode count.  Since typical ext4 filesystems only use 1-10% of their inodes, this feature can greatly reduce e2fsck time for users.  With performance improvement of 2-20 times, depending on how full the filesystem is.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/Linux/Improving_fsck_Speeds_in_ext4&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/Linux/Improving_fsck_Speeds_in_ext4#comments</comments>
 <category domain="http://kerneltrap.org/taxonomy/term/956">Avantika Mathur</category>
 <category domain="http://kerneltrap.org/taxonomy/term/954">e2fsck</category>
 <category domain="http://kerneltrap.org/ext3">ext3</category>
 <category domain="http://kerneltrap.org/ext4">ext4</category>
 <category domain="http://kerneltrap.org/fsck">fsck</category>
 <category domain="http://kerneltrap.org/inode">inode</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Wed, 19 Sep 2007 06:40:27 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">14401 at http://kerneltrap.org</guid>
</item>
<item>
 <title>Linux:  Btrfs, File Data and Metadata Checksums</title>
 <link>http://kerneltrap.org/node/8376</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Chris Mason announced an early alpha release of his ne