LWN.net Logo

OpenSUSE moving away from reiserfs with 10.2

From:  Jeff Mahoney <jeffm-AT-suse.com>
To:  opensuse-factory-AT-opensuse.org
Subject:  Proposal: Change in default fs for releases >= 10.2
Date:  Thu, 14 Sep 2006 06:15:26 -0400
Archive-link:  Article, Thread

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


Hi all -

We've been using ReiserFS as our default installation file system for
the last 6-7 years now, and it's served us well in that time.
Unfortunately, there are a number of problems with it, some purely
technical, some more related to maintenance. I'll outline a few of the
larger issues and offer my solution as a conclusion.

ReiserFS has serious scalability problems. David Chinner's talk at OLS
really underscored the problem well for a single, large, high bandwidth
file system. While I realize that XFS-style scalability isn't a real
goal for most users, ans isn't a target workload for reiserfs, the
scalability problems are real. ReiserFS uses the BKL for synchronization
everywhere, and since it's system-global lock, the problem doesn't go
away when you split the file system into smaller ones. Lock contention
alone is one problem, but it's made worse by cache bouncing between
processors on larger systems.

ReiserFS has serious performance problems with extended attributes and
ACLs. (Yes, this one is my own fault, see numerous flamewars on lkml and
reiserfs-list for my opinion on this.) xattrs are backed by normal files
rooted in a hidden directory structure. This is bad for performance and
in rare cases is deadlock prone due to lock inversions between pdflush
and the xattr code. The quota code gets around this, but the fix would
result in huge amounts of wasted space with ReiserFS. With increasing
deployment of SLES as samba servers, and perhaps NFSv4 servers, the use
of extended attributes will only increase.

ReiserFS has a small and shrinking development community. Right now, the
only developers really working with ReiserFS are Chris Mason, Jan Kara
(internally), a rotating member of Hans Reiser's team, and myself. All
of us have projects we're very much more interested in than working with
ReiserFS. While Jan and I will be continuing to support ReiserFS for
SUSE, Hans is increasingly (hard to believe) pushing people to use
reiser4. Chris has moved on to Oracle and has expressed his opinions on
leaving ReiserFS behind.

ReiserFS v3 is a dead end. Hans has been pushing reiser4 for years now
and declared Reiser3 in maintenance mode. Any changes that aren't bug
fixes are met with violent resistance. Reiser4 is not an incremental
update and requires a reformat, which is unreasonable for most people.
Reiser3 lacks a number of features that other file systems either have
or are adding soon, such as extents and growth beyond current limits.
Since it's in maintenance mode, that's unlikely to change. I view
reiser4 as an interesting research file system, but that's about as far
as it goes. I've been unimpressed with its stability so far. I don't
know how advanced the recovery tools are yet, but I suspect that the
complexity of the format and the ability to essentially define the
format on-the-fly with plugins will make a useful fsck extremely difficult.

The solution for replacing an aging file system isn't to switch to a
brand new unproven file system, but rather a proven one with a clear
upgrade path. That file system is ext3.

Ext3's performance in some situations may not be on par with Reiser3,
but it scales better and Andi mentioned the other day that there is
quite a bit of research going into improving the locking and general
performance of ext3 going on right now, and since reiser3 is stagnant, I
don't doubt they'll pass them soon.

Ext3 has a much larger development community out there. Most other
distributions use ext3 as their default file system, so bugs that don't
end up getting reported to us and are fixed by other developers, we get
for free - most Reiser3 fixes originate from Chris or I.

Ext3 has a clear upgrade path. There is quite a bit of interest in the
community in improving ext3, and ext4 is already under development. Like
the upgrade path from ext2 to ext3, the path to ext4 is clearly defined.
Existing file systems can be updated easily, and new files will be able
to take advantage of the new features. Features already written and
queued up include extents, a 64-bit journal, and 64-bit file sizes.

Most of the institutional knowledge of reiserfs is bouncing around in my
head. Jan has been getting his hands dirty a little bit, but beyond
that, finding additional developers with reiserfs experience will be
extremely difficult and I'd call training additional developers a wasted
effort. Since reiserfs is in maintenance mode, the effort needed to
continue to support it in future releases should be shrinking.

To be clear, my long term goal is to use OCFS2 (or another CFS if one
shows a clear adoption advantage) for the root file system. This would
enable single-instance clustering at both the physical and the virtual
distribution level and get us ease of management and flexibility in HA
deployments. Realistically, though, desktop users are likely to continue
to use ext[34] for the foreseeable future. Until we have OCFS2 (and the
rest of the distribution) ready for such a deployment described above on
larger servers, ext3 would be a suitable choice across the board.

- -Jeff

- --
Jeff Mahoney
SUSE Labs
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org

iD8DBQFFCSu+LPWxlyuTD7IRAgJoAJ49w+Ml6/cf4HqLRoHAb7L7S3lDMQCfafIL
JkIApJTPoS6sytFVaDI++KE=
=mFFG
-----END PGP SIGNATURE-----


(Log in to post comments)

OpenSUSE moving away from reiserfs with 10.2

Posted Oct 5, 2006 15:57 UTC (Thu) by fozzy (guest, #7022) [Link]

"my long term goal is to use OCFS2"

I'm curious, could someone explain the benefits people expect to get from running and OCFS2 root filesystem? Is it just for "big iron" users, or does this have the potential to bring some benefits to a home user's system(s)?

Thanks

OpenSUSE moving away from reiserfs with 10.2

Posted Oct 6, 2006 1:30 UTC (Fri) by wahern (subscriber, #37304) [Link]

Trying [re-]reading the last paragraph.

OpenSUSE moving away from reiserfs with 10.2

Posted Oct 6, 2006 2:04 UTC (Fri) by fozzy (guest, #7022) [Link]

I've read the last paragraph (again).

My reading of it is:

Jeff is speaking (semi) officially on behalf of OpenSUSE and he's suggesting that in the long term OCFS2 will be their default root filesystem. He acknowledges that this maybe sometime off and that ext3/4 will be the default for the foreseeable future. But, it suggests that in the long term, OpenSUSE will default to OCFS2. When that happens what will it offer non-big-iron users?

Maybe I am mis-reading Jeff's message, but to me it suggests that eventually all OpenSUSE default installs will have an OCFS2 root file system.

OpenSUSE moving away from reiserfs with 10.2

Posted Oct 7, 2006 9:57 UTC (Sat) by oak (guest, #2786) [Link]

Well, at the install time one can select which type of an installation
is to be done. It affects the package selection, but I don't see why
it could not affect also the default file system type...

OpenSUSE moving away from reiserfs with 10.2

Posted Oct 11, 2006 21:50 UTC (Wed) by pr1268 (subscriber, #24648) [Link]

My own personal thoughts are that, although one can choose the root filesystem when installing Linux, the default choice for a given distribution is akin to that distribution endorsing said filesystem. Conversely, the omission of a filesystem in the installation screens (assuming that that filesystem is fully supported by the Linux Kernel and supports permissions, ACLs, etc.) is like the distribution saying that they don't (or won't) support that filesystem.

For years, SuSE SUSE OpenSUSE has heartily encouraged users/sysadmins to use the "default" ReiserFS when installing the OS. In contrast, I thoght I remember using Red Hat 8.2 (or was it 9?) which didn't even offer ReiserFS as a root filesystem choice. (PLEASE correct me if I'm wrong, it's just been a while since I dumped Red Hat/Fedora but that's another story.)

Forgive me for generalizing when I say that software distributors/vendors prey on users not knowing their choices when they ignorantly click the "OK" button. Microsoft does this often (assuming everyone will use Internet Explorer as their one and only Web browser). Even the Linux distribution I've come to love and respect, Slackware, defaults to ReiserFS, but I see the other choices (I'm perfectly happy with Ext3 on both my desktop and laptop) right there on the installation screen and know to make the choice I prefer.

Certainly the mere fact that some default choice is pre-selected by the distribution means someone has a motivation for making it that way. Just my $0.02...


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