User: Password:
Subscribe / Log in / New account

Re: Btrfs as default file system

From:  Arjan van de Ven <arjan-VuQAYsv1563Yd54FQh9/>
To:  Ameya Palande <>
Subject:  Re: Btrfs as default file system
Date:  Tue, 11 May 2010 06:38:01 -0700
Archive-link:  Article, Thread

On 5/11/2010 4:00, Ameya Palande wrote:
> Hi,
> I wanted to know why Btrfs is selected as default file system for MeeGo.

we made a positive choice for btrfs for a list of reasons
* It's the future of Linux filesystems. We had a case where the old guard
(ext3) is getting retired, and there are two new filesystmes on the table
(btrfs and ext4). We felt that if we picked ext4, we'd have all the pain of
a new filesystem, and we'd then change again a year later to btrfs.
* BTRFS has a strong focus on data integrity, while many other filesystems
focus mostly on metadata integrity. For most cases this
  extra focus is free, however for database applications there is a moderate
performance impact.
  This includes things like duplicating key metadata structures on disk
twice, having data checksums, can mark files as critical and for
  duplication (RAID1)... but basically the whole COW design (never overwrite
data) means that you never get garbage in files.
* BTRFS supports on-disk compression, giving both a smaller footprint
(factory preload time!) as well as higher throughput on really slow
* BTRFS has writable snapshots. This opens the door to features in MeeGo 1.1
like atomic package updates (already a Fedora 13 feature with
  btrfs) but also the "Restore to factory defaults" becomes easy: just blow
away the snapshot and create a new one and the device is as new.
  You can even use it to have "true multiple users" in the system, both users
have the whole device for themselves with a boot time switch
* Performance for small files. Small files are very common, and BTRFS stores
these very efficiently on disk. Whereas other filesystems
  generally need upto 3 IOs (and thus 3 seeks if your storage rotates) to
access a file, BTRFS stores everything together and needs only 1
* Built in defragmentation - performance feature for things like boot time
* Storage pools: Add and remove storage on the fly. (Yes even for phones
this can matter... lets say you have a small flash chip you populate in the
factory; this feature allows you to then expand to a secondary storage
during first use as if it's one big filesystem... no more /opt issues etc)
* ...

well it's a long list of things that made us chose btrfs over its

(Log in to post comments)

Copyright © 2010, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds