
rm -r fs/ext3 - JoshTriplett
https://lwn.net/SubscriberLink/651645/f0f5d5e6460edc60/
======
malkia
First I thought, what about people with ext3 installed - then I've found this
post -
[http://thread.gmane.org/gmane.linux.kernel/1996708](http://thread.gmane.org/gmane.linux.kernel/1996708)

"no fstab changes required. The ext4 driver has been able to register itself
as ext[23] for quite some time now, so it's transparent.

Many/most distros have been using the ext4.ko driver for ext3 & ext2 for
years. You may already be using that on some boxes, and not even know it. ;)

-Eric (Sandeen)"

Some more techincal information here:
[http://article.gmane.org/gmane.linux.file-
systems/97986](http://article.gmane.org/gmane.linux.file-systems/97986)
(thanks madars for the correct url)

~~~
desdiv
Which brings up a good question: how many of ext4's 60,000 lines of code are
compatibility drivers for ext3 and ext2?

~~~
knome
It's actually really interesting, some of the backwards compatibility
features. For example, directory hashes that allow fast name lookup are hidden
inside of "empty" elements of the previous list format so that older drivers
can still find files in the newer versions of the file system.

Many structures also include their size, so that drivers can tell how much
functionality any given element supports by which fields it contains or omits.

~~~
malkia
reminds of FAT, where clever scheme was put to keep the long file names in
between the short ones, using several records, all begining with \0x00 so that
they are ignored.

------
rayiner
Obligatory "I feel old" post: Feels like not that long ago I was wondering
whether to patch my kernel and upgrade to the experimental ext3.

~~~
mhurron
Thats funny, I was just remembering installing one of my first Linux distros
where I had to choose between 2.2 or the brand new 2.4. I remember booting
between them to see which one worked best with what I had.

I suppose I had to decide to deal with ext3 not long after that.

~~~
mromanuk
yes, me too. I remember living on the edge with the 2.4, I used Slackware. I
recompiled the kernel once or two times a day :/ Always patching nvidia driver
(in cli) because I cannot access X11 without driver :D

------
ryen
> For a while, some thought that might be a filesystem called reiser4, but
> that story failed to work out well even before that filesystem's primary
> developer left the development community

This was a nice toungue-in-cheek for Hans Reiser going to prison

~~~
marcosdumay
He left the community long before he got accused of anything. He created his
FS, and moved away.

------
nickpsecurity
Reading the comments, I'm guessing I was the only fan of SGI who saw
supercomputers used XFS (or variants), figured it would handle my lowly
workloads, put it on my machines, worked around its few weaknesses, and just
never thought of filesystem choice again aside from boot partition.

Still my favorite filesystem for what was my favorite supercomputing & NUMA
company.

~~~
buster
Actually, XFS is now default on RHEL and Suse :)

But honestly, over the last years i have a strong feeling for the old, fast,
stable (and most importantly simple!) filesystems like ext* or xfs.

Just yesterday i had btrfs telling me that my disk is full (when in fact it is
half full with nearly 400GB free!). Also have seen some major, hard to resolve
problems with ZFS years ago.

It led me to believe, why the hell we need those ultracomplicated can-do-
everything filesystems?! The only thing i actually care for is fast access
without some complicated compression, deduplication and what-not steps in
between and data safety. And as far as i can tell, ext4 and XFS are pretty
safe. Never seen those destroy files. Ever.

On the other hand finding problems and debugging filesystems in kernel can be
a major headache. I want my filesystem to as simple as possible, nowadays. ZFS
and btrfs is all nice and so on, but next time i look for a filesystem, i'll
go back to the established and simpler ones.

~~~
laumars
I've had the opposite impression of ZFS - it's saved my data on a number of
occasions when ext* would have failed completely. I personally think Sun's
engineers did an amazing job with ZFS. Plus while the file system is hugely
complex, management of it is remarkably straightforward - which leads to less
user / sysadmin error when running it.

Sadly though, I do agree with your judgement of Btrfs. I trialled it for about
6 months and found it to be conceptually similar to ZFS but very much it's
practical polar opposite.

However, like with any software decision, the right file system choice depends
as much on the platform's intended purpose and the administrator, as it does
on age and features. For file servers, ZFS is an excellent choice; but for low
footprint appliances, you'd be better off with ext4 or xfs. And desktops is
just a question of personal preference.

~~~
buster
I'm not an expert (but, so most people are no experts in this area), but i
have a feeling that ZFS needs huge amounts of memory (compared to ext). It
does nifty stuff, for sure. But do i need all of that? Hardly.

For example, i am wondering why i would want to put compression into the file
system. Or deduplication. Or the possibility to put some data on SSD and other
on HDD. If i have a server and user data, it should be up to the application
to do this stuff. That should be more efficient, because the app actually
knows how to handle the data correctly and efficiently. It would also be
largely independent of the file storage.

I've seen some cases where we had a storage system, pretending to do fancy
stuff and fail on it. And debugging such things is a nightmare (talking about
storage vendors here, though). But for example, a few years ago we had major
performance problems because a ZFS mount was at about 90% of space. It was not
easy to pinpoint that. After the fact it's clear, and nowadays googling it
would probably give enough hints. But in the end I would very much like that
my filesystem does not just slow down depending on how much filled it is. Or
how much memory i have.

edit: Also, just to clarify. I think that Sun had one of the best engineers of
the whole industry. Everything they did has been great. Honestly, i have huge
respect for them and also for ZFS. I still think that ZFS is great, but in the
end, i am wondering if it is just too much. For example, nowadays you have a
lot of those stateless redundant S3 compatible storage backends. Or use
Cassandra, etc. Those already copy your data multiple times. Even if they run
on ZFS, you don't gain much. If you run ext4 and it actually loses data, the
software cares about that. That's just one case, and of course it depends on
your requirements. Just saying, those cases are increasing where the software
already cares for keeping the important data safe.

~~~
laumars
_> I'm not an expert (but, so most people are no experts in this area), but i
have a feeling that ZFS needs huge amounts of memory (compared to ext). It
does nifty stuff, for sure. But do i need all of that? Hardly._

ZFS needs more memory than ext4, but reports for just how much memory ZFS
needs is grossly over estimated. At least for desktop usage - file servers are
a different matter and thus that's where those figures come from.

To use a practical example, I've ran ZFS + 5 virtual machines on 4GB RAM and
not had any issues what-so-ever.

 _> For example, i am wondering why i would want to put compression into the
file system._

A better question would be, why _wouldn 't_ you? It happens transparently and
causes next to no additional overhead. But you can have that disabled in ZFS
(or any other file system) if you really want to.

 _> Or deduplication._

Deduplication is disabled on ZFS by default. It's actually a pretty nichely
used feature despite it's wider reporting.

 _> Or the possibility to put some data on SSD and other on HDD. If i have a
server and user data, it should be up to the application to do this stuff.
That should be more efficient, because the app actually knows how to handle
the data correctly and efficiently. It would also be largely independent of
the file storage._

I don't get your point here. ZFS doesn't behave any differently to ext in that
regard. Unless you're talking about SSD cache disks, in which case that's
something you have to explicitly set up.

 _> I've seen some cases where we had a storage system, pretending to do fancy
stuff and fail on it. And debugging such things is a nightmare (talking about
storage vendors here, though). But for example, a few years ago we had major
performance problems because a ZFS mount was at about 90% of space. It was not
easy to pinpoint that. After the fact it's clear, and nowadays googling it
would probably give enough hints. But in the end I would very much like that
my filesystem does not just slow down depending on how much filled it is. Or
how much memory i have._

ZFS doesn't slow down if the storage pools are full; the problem you described
there sounds more like fragmentation, and that affects _all_ file systems.
Also the performance of _all_ file systems is also memory driven (and
obviously storage access times). OS's cache files in RAM (this is why some
memory reporting tools say Windows or Linux is using GB's RAM even when
there's little or no open applications - because they don't exclude cached
memory from used memory). This happens with ext4, ZFS, NTFS, xfs and even
FAT32. Granted ZFS has a slightly different caching model to the Linux
kernel's, but file caching is something that is free memory driven and applies
to every file system. This is why file servers are usually speced with lots of
RAM - even when running non-ZFS storage pools.

I appreciate that you said none of us are experts on file systems, but it
sounds to me like you've based your judgement on a number of anecdotal
assumptions; in that the problems you raised are either not part of ZFS's
default config, or are limitations present in any and all file systems out
there but you just happened upon them in ZFS.

 _> i am wondering if it is just too much. For example, nowadays you have a
lot of those stateless redundant S3 compatible storage backends. Or use
Cassandra, etc. Those already copy your data multiple times. Even if they run
on ZFS, you don't gain much._

While that's true, you are now comparing Apples to oranges. But in any case,
it's not best practice to be running a high performance database on top of ZFS
(nor any of CoW file system). So in those instances ext4 or xfs would
definitely be a better choice.

FYI, I also wouldn't recommend ZFS for small capacity / portable storage
devices nor many real time appliances. But if file storage is your primary
concern, then ZFS definitely has a number of advantages over ext4 and xfs
which aren't over-complicated nor surplus toys (eg snapshots, CoW journalling,
online scrubbing, checksums, datasets, etc).

------
cbhl
I feel like, a few years from now, a new kernel developer will wonder why
there are ext2 and ext4 modules but not an ext3 module, and this will be the
answer.

~~~
eru
What about a hypothetical ext1?

~~~
ajross
The Extended File System is not a hypothesis, it was a real filesystem. But it
was replaced by ext2 (from the same author) very early, and by the time the
distributions we know today were being put together it had already become the
default choice. I don't know when exactly ext was removed from the kernel
tree.

~~~
muizelaar
Linux 2.1.21

------
MBCook
I had completely forgotten about the whole reiserfs saga: v3, v4, creation of
ext4, ZFS comparisons, then the trial.

The file system wars were an interesting time.

God I've been reading LWN forever. I had already been reading for many years
when that stuff was going on.

~~~
gnu8
I'm glad the author chose to leave out the details and just say he left the
community. We don't need to read the lurid but irrelevant details in every
article about filesystems.

~~~
ddoolin
Your comment was enough to cause me to Google it. I'm glad I did (that isn't
to say happy about the circumstance), this kind of drama doesn't come around
these parts often...

The first line of his Wikipedia entry is a tell-all:
[https://en.wikipedia.org/wiki/Hans_Reiser](https://en.wikipedia.org/wiki/Hans_Reiser)

~~~
rodgerd
And if you read the Talk pages you'll see he still has his defenders, getting
angry about him being described as a murderer.

~~~
vidarh
As far as I can tell most of those comments pre-dates his conviction.

During the trial, I too saw plenty of reasons not to want to assume guilt
prematurely - there were plenty of weird circumstances, and the evidence did
not necessarily seem overwhelming at a distance (quite possibly reading the
full transcript might have reduced that doubt) though it certainly pointed in
his direction. The question really was not whether or not he looked guilty,
though, but whether or not the evidence proved it beyond reasonable doubt.

But of course he afterwards ended up _leading police to her grave_ , causing
whatever doubt was justified before to disappear (and the pre-conviction doubt
also steadily dropped largely thanks to his own behaviour during the trial).

------
trengrj
Can anyone share a non-paywalled link? I'm getting "subscription required"
from LWN.

~~~
pubby
[http://webcache.googleusercontent.com/search?q=cache:https:/...](http://webcache.googleusercontent.com/search?q=cache:https://lwn.net/SubscriberLink/651645/f0f5d5e6460edc60/)

------
mc808
It's not clear why they don't remove both ext2 and ext3. From the article it
sounds like they're equally redundant but harmless other than taking up space
in a directory listing. Does ext2 have "features" (read: potentially useful
bugs) that are no longer present in ext4?

Edit: Ahh. Looks like I missed "good filesystem for developers to experiment
with."

~~~
azurezyq
As the author pointed out, the ext2 is more like a canonical example of how a
fs should look like. More for educational use I think.

~~~
joshstrange
I don't doubt that at all but I'm still confused. That's was SCM is for... Not
like removing it from the repo makes it disappear off the face of the earth...

------
blinkingled
Note that ext4 FS driver can mount both ext2 and ext3 filesystems on its own.
So this isn't that big a deal.

------
roel_v
Isn't there a rule against submitting paywalled articles?

~~~
JoshTriplett
It's an LWN subscriber link; it's supposed to work without a subscription. A
few other comments mention hitting that as well, though; odd.

~~~
DavidNielsen
This is the second LWN subscriber link to be posted in as many days. I suspect
they might have been a little peeved as posting those for the entire world to
use isn't exactly the intended use.

~~~
JoshTriplett
Jonathan Corbet has explicitly said he likes seeing LWN subscriber links
posted to services like HN, as long as nobody is systematically posting
_every_ paid article.

------
davidgerard
> For a while, some thought that might be a filesystem called reiser4, but
> that story failed to work out well even before that filesystem's primary
> developer left the development community.

Well, not so much "left" ...

~~~
seba_dos1
Effectively left. The fact and the reason why he was effectively forced to are
irrelevant to this article.

