From: Linus Torvalds <torvalds@osdl.org>
To: Kyle Moffett <mrmacman_g4@mac.com>
Cc: Jeff Garzik <jeff@garzik.org>,
Chase Venters <chase.venters@clientec.com>,
Alex Tomas <alex@clusterfs.com>,
Andreas Dilger <adilger@clusterfs.com>,
Andrew Morton <akpm@osdl.org>,
ext2-devel <ext2-devel@lists.sourceforge.net>,
linux-kernel@vger.kernel.org, cmm@us.ibm.com,
linux-fsdevel@vger.kernel.org
Subject: Re: [Ext2-devel] [RFC 0/13] extents and 48bit ext3
Date: Sat, 10 Jun 2006 13:02:26 -0700 (PDT) [thread overview]
Message-ID: <Pine.LNX.4.64.0606101248030.5498@g5.osdl.org> (raw)
In-Reply-To: <Pine.LNX.4.64.0606101238110.5498@g5.osdl.org>
On Sat, 10 Jun 2006, Linus Torvalds wrote:
>
> ext2 is half the size of ext3, and that's ignoring JBD entirely.
Btw, let me say again that I'm fairly neutral on any particular individual
feature (ie the 48-bit thing doesn't actually move me all that much in
itself), but that from a maintenance standpoint, I think splitting off
filesystems and drivers has been a _huge_ success.
Starting from scratch - even if you literally start from the same
code-base - and allowing the old functionality to remain undisturbed is
just a very nice model. Yeah, yeah, it has some diskspace cost (although
at least from a git perspective, even that isn't really true), but we've
seen both in drivers and in filesystems how splitting things up has been a
great thing to do.
Sometimes it's a great thing just because five years later, it turns out
that nobody even uses the legacy thing, and you decide to at that point
just remove the driver (or filesystem, but so far it's never been the
case for filesystems even if smbfs is a potential victim of this in the
not _too_ distant future), because the new version simply does everything
better.
And that's _not_ a failure of the model. It's a success too. But so is the
above commentary on ext2, when the "old driver/filesystem is still used
and maintained by odd people". It's just two different possible outcomes
of the decision to do development separately from an older user base.
And again, I'd like to stress the _user_base_ over the _code_base_. In
many ways, that's the much more important split. I suspect Jeff has seen
this in drivers, where a lot of users simply do not want to have a new
driver, because it does some huge fundamental improvement for new users
but doesn't work for old ethernet cards, for example, because it missed
some old use case depended on a legacy feature that just doesn't fit well
into the new (and obviously improved) world-view.
So we've often seen a driver that _could_ have handled different versions
of the same card/chip split into an "old" and a "new" driver, and on the
whole it has always been positive - even if eventually the old driver just
becomes irrelevant for one reason or another.
Duplication isn't actually bad. It's what often allows experimentation,
and streamlining. In drivers, for example, duplication is _often_ done as
part of simply dropping support for old cards in the new version, but also
by dropping and simplifying the old driver that now has a much clearer
"raison d'etre", aka "user base".
Which gets me back to the whole "'user base' matters more than 'code
base'" argument, because it's literally the user base that determines
development (or lack of it - non-development is often the big reason for a
user base, as anybody who works for a distribution maintainer should know
intimately).
Linus
next prev parent reply other threads:[~2006-06-10 20:02 UTC|newest]
Thread overview: 295+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-09 1:20 [RFC 0/13] extents and 48bit ext3 Mingming Cao
2006-06-09 2:40 ` Valdis.Kletnieks
2006-06-09 8:20 ` Andreas Dilger
2006-06-09 18:35 ` [Ext2-devel] " Stephen C. Tweedie
2006-06-09 19:20 ` Jeff Garzik
2006-06-09 19:28 ` Alex Tomas
2006-06-09 19:32 ` Jeff Garzik
2006-06-09 19:41 ` Alex Tomas
2006-06-09 15:23 ` Mingming Cao
2006-06-09 2:49 ` Jeff Garzik
2006-06-09 8:35 ` Andreas Dilger
2006-06-09 15:08 ` Jeff Garzik
2006-06-09 15:25 ` Jeff Garzik
2006-06-09 15:40 ` Linus Torvalds
2006-06-09 15:47 ` Jeff Garzik
2006-06-09 15:55 ` Alex Tomas
2006-06-09 15:56 ` Jeff Garzik
2006-06-09 16:07 ` Alex Tomas
2006-06-09 16:09 ` [Ext2-devel] " Jeff Garzik
2006-06-09 18:04 ` Matthew Frost
2006-06-09 18:10 ` Alex Tomas
2006-06-09 18:14 ` [Ext2-devel] " Andreas Dilger
2006-06-09 18:51 ` Jeff Garzik
2006-06-09 19:39 ` Gerrit Huizenga
2006-06-09 19:45 ` [Ext2-devel] " Jeff Garzik
2006-06-09 20:38 ` Gerrit Huizenga
2006-06-10 10:03 ` Christoph Hellwig
2006-06-09 19:49 ` [Ext2-devel] " Theodore Tso
2006-06-09 20:04 ` Jeff Garzik
2006-06-09 20:57 ` Stephen C. Tweedie
2006-06-09 21:49 ` Jeff Garzik
2006-06-09 21:55 ` [Ext2-devel] " Stephen C. Tweedie
2006-06-09 23:44 ` Jeff Garzik
2006-06-10 0:45 ` [Ext2-devel] " Andreas Dilger
2006-06-10 0:47 ` Theodore Tso
2006-06-10 1:09 ` Jeff Garzik
2006-06-10 1:30 ` [Ext2-devel] " Andreas Dilger
2006-06-10 1:43 ` Jeff Garzik
2006-06-10 2:03 ` Theodore Tso
2006-06-10 2:11 ` [Ext2-devel] " Jeff Garzik
2006-06-10 2:54 ` Theodore Tso
2006-06-10 3:11 ` Jeff Garzik
2006-06-10 12:15 ` Theodore Tso
2006-06-10 14:31 ` Jeff Garzik
2006-06-10 2:58 ` [Ext2-devel] " Jeff Garzik
2006-06-10 2:26 ` Andreas Dilger
2006-06-10 2:31 ` Jeff Garzik
2006-06-10 4:22 ` Andreas Dilger
2006-06-09 22:37 ` [Ext2-devel] " Andreas Dilger
2006-06-11 16:02 ` Arjan van de Ven
2006-06-11 16:30 ` Nikita Danilov
2006-06-11 16:55 ` [Ext2-devel] " Arjan van de Ven
2006-06-12 6:35 ` Andreas Dilger
2006-06-12 22:06 ` [Ext2-devel] " Pavel Machek
2006-06-14 14:31 ` Barry K. Nathan
2006-06-14 21:34 ` [Ext2-devel] " Pavel Machek
2006-06-15 0:28 ` Barry K. Nathan
2006-06-15 4:55 ` Theodore Tso
2006-06-15 7:43 ` Barry K. Nathan
2006-06-15 9:15 ` Pavel Machek
2006-06-15 9:40 ` Barry K. Nathan
2006-06-15 9:50 ` [Ext2-devel] " Pavel Machek
2006-06-09 20:52 ` Stephen C. Tweedie
2006-06-09 21:47 ` [Ext2-devel] " Jeff Garzik
2006-06-10 0:41 ` James Morris
2006-06-09 16:01 ` Linus Torvalds
2006-06-09 20:38 ` Stephen C. Tweedie
2006-06-09 15:57 ` Jeff Garzik
2006-06-09 16:10 ` [Ext2-devel] " Alex Tomas
2006-06-09 16:10 ` Jeff Garzik
2006-06-09 16:24 ` Erik Mouw
2006-06-09 16:28 ` Jeff Garzik
2006-06-09 16:24 ` [Ext2-devel] " Chase Venters
2006-06-09 16:25 ` Alex Tomas
2006-06-09 16:28 ` Jeff Garzik
2006-06-09 16:50 ` Alex Tomas
2006-06-09 16:53 ` [Ext2-devel] " Jeff Garzik
2006-06-09 17:01 ` Alex Tomas
2006-06-09 17:10 ` Jeff Garzik
2006-06-09 16:25 ` Linus Torvalds
2006-06-09 16:48 ` Alex Tomas
2006-06-09 16:54 ` KELEMEN Peter
2006-06-09 16:55 ` Jeff Garzik
2006-06-09 17:12 ` [Ext2-devel] " Alex Tomas
2006-06-09 17:12 ` Jeff Garzik
2006-06-09 19:57 ` Theodore Tso
2006-06-09 20:09 ` Jeff Garzik
2006-06-09 20:14 ` Alex Tomas
2006-06-09 20:28 ` Jeff Garzik
2006-06-19 7:48 ` [Ext2-devel] " Helge Hafting
2006-06-09 20:38 ` Joel Becker
2006-06-09 20:50 ` Dave Jones
2006-06-09 21:09 ` Joel Becker
2006-06-09 21:51 ` Mike Snitzer
2006-06-09 21:32 ` [Ext2-devel] " Jeff Garzik
2006-06-09 22:56 ` Andreas Dilger
2006-06-09 23:06 ` Linus Torvalds
2006-06-09 23:09 ` Jeff Garzik
2006-06-09 23:37 ` [Ext2-devel] " Andreas Dilger
2006-06-09 23:54 ` Linus Torvalds
2006-06-09 21:03 ` Theodore Tso
2006-06-09 21:24 ` Joel Becker
2006-06-09 21:36 ` [Ext2-devel] " Chase Venters
2006-06-09 21:51 ` Theodore Tso
2006-06-09 22:07 ` Joel Becker
2006-06-09 22:31 ` [Ext2-devel] " Theodore Tso
2006-06-09 22:47 ` Joel Becker
2006-06-09 23:54 ` [Ext2-devel] " Theodore Tso
2006-06-09 23:48 ` Jeff Garzik
2006-06-12 8:58 ` Jes Sorensen
2006-06-10 0:07 ` Olivier Galibert
2006-06-10 0:13 ` Jeff Garzik
2006-06-09 16:54 ` [Ext2-devel] " Linus Torvalds
2006-06-09 17:04 ` Alex Tomas
2006-06-09 17:30 ` [Ext2-devel] " Linus Torvalds
2006-06-09 17:41 ` Matthew Wilcox
2006-06-09 17:50 ` Jeff Garzik
2006-06-09 18:00 ` Alex Tomas
2006-06-09 18:04 ` [Ext2-devel] " Linus Torvalds
2006-06-09 18:17 ` Michael Poole
2006-06-09 17:44 ` Theodore Tso
2006-06-09 17:58 ` Jeff Garzik
2006-06-09 18:10 ` [Ext2-devel] " Andreas Dilger
2006-06-09 18:22 ` Linus Torvalds
2006-06-09 18:30 ` Alex Tomas
2006-06-09 18:38 ` Linus Torvalds
2006-06-09 18:50 ` [Ext2-devel] " Chase Venters
2006-06-09 19:00 ` Chase Venters
2006-06-10 13:33 ` Adrian Bunk
2006-06-09 19:01 ` Jeff Garzik
2006-06-10 19:27 ` Kyle Moffett
2006-06-10 19:44 ` Linus Torvalds
2006-06-10 20:02 ` Linus Torvalds [this message]
2006-06-10 21:26 ` Theodore Tso
2006-06-10 21:31 ` Linus Torvalds
2006-06-10 22:12 ` Jeff Garzik
2006-06-10 22:21 ` Jeff Garzik
2006-06-11 4:39 ` Stable/devel policy - was Re: [Ext2-devel] " Neil Brown
2006-06-11 5:19 ` Stable/devel policy - was " Linus Torvalds
2006-06-11 7:32 ` Ingo Molnar
2006-06-13 0:28 ` Stable/devel policy - was Re: [Ext2-devel] " Mingming Cao
2006-06-09 19:21 ` Alan Cox
2006-06-09 19:13 ` [Ext2-devel] " Chase Venters
2006-06-09 19:24 ` Alex Tomas
2006-06-09 19:25 ` Jeff Garzik
2006-06-09 19:35 ` Alex Tomas
2006-06-09 19:35 ` [Ext2-devel] " Jeff Garzik
2006-06-09 20:44 ` Joel Becker
2006-06-09 20:49 ` Alex Tomas
2006-06-09 21:11 ` Joel Becker
2006-06-09 21:20 ` Alex Tomas
2006-06-09 21:29 ` Joel Becker
2006-06-09 21:33 ` Alex Tomas
2006-06-09 21:43 ` Joel Becker
2006-06-11 20:14 ` [Ext2-devel] " grundig
2006-06-14 16:45 ` Alex Tomas
2006-06-09 19:22 ` Alex Tomas
2006-06-09 19:22 ` Jeff Garzik
2006-06-09 20:16 ` Andreas Dilger
2006-06-09 20:31 ` Linus Torvalds
2006-06-09 20:31 ` Jeff Garzik
2006-06-09 18:43 ` [Ext2-devel] " Jeff Garzik
2006-06-09 18:50 ` Diego Calleja
2006-06-09 19:08 ` Diego Calleja
2006-06-09 18:40 ` [Ext2-devel] " Jeff Garzik
2006-06-09 18:59 ` Andrew Morton
2006-06-09 19:16 ` Jeff Garzik
2006-06-09 20:27 ` [Ext2-devel] " Chase Venters
2006-06-09 20:44 ` Alan Cox
2006-06-11 15:52 ` [Ext2-devel] " Arjan van de Ven
2006-06-09 18:41 ` Jeff Garzik
2006-06-09 17:12 ` Jeff Anderson-Lee
2006-06-09 18:02 ` Andrew Morton
2006-06-10 19:10 ` Kyle Moffett
2006-06-10 19:27 ` Linus Torvalds
2006-06-09 15:28 ` [Ext2-devel] " Alex Tomas
2006-06-09 15:31 ` Matthew Wilcox
2006-06-10 3:26 ` Continuation Inodes Explained! (was Re: [RFC 0/13] extents and 48bit ext3) Valerie Henson
2006-06-10 5:25 ` Andreas Dilger
2006-06-10 5:41 ` Valerie Henson
2006-06-10 6:22 ` Andreas Dilger
2006-06-10 14:22 ` Jeff Garzik
2006-06-09 15:44 ` [Ext2-devel] [RFC 0/13] extents and 48bit ext3 Jeff Garzik
2006-06-09 15:53 ` Alex Tomas
2006-06-09 15:52 ` Jeff Garzik
2006-06-09 16:02 ` Alex Tomas
2006-06-09 16:04 ` [Ext2-devel] " Jeff Garzik
2006-06-09 18:29 ` Andreas Dilger
2006-06-09 15:53 ` [Ext2-devel] " Gerrit Huizenga
2006-06-09 16:03 ` Jeff Garzik
2006-06-09 16:09 ` Linus Torvalds
2006-06-09 17:58 ` Gerrit Huizenga
2006-06-09 18:25 ` [Ext2-devel] " Chase Venters
2006-06-10 13:46 ` Adrian Bunk
2006-06-10 14:42 ` Ingo Molnar
2006-06-10 15:03 ` Jeff Garzik
2006-06-11 6:00 ` Ingo Molnar
2006-06-10 16:00 ` Adrian Bunk
2006-06-10 16:05 ` Christoph Hellwig
2006-06-10 23:05 ` Mike Galbraith
2006-06-13 13:34 ` [Ext2-devel] " Helge Hafting
2006-06-09 20:32 ` Stephen C. Tweedie
2006-06-09 20:46 ` Linus Torvalds
2006-06-09 20:56 ` Alex Tomas
2006-06-20 6:15 ` [Ext2-devel] " Qi Yong
2006-06-20 8:26 ` Laurent Vivier
2006-06-20 8:30 ` Jeff Garzik
2006-06-20 9:21 ` Laurent Vivier
2006-06-20 9:48 ` Jeff Garzik
2006-06-20 10:40 ` Laurent Vivier
2006-06-09 17:14 ` Alan Cox
2006-06-09 9:13 ` Christoph Hellwig
2006-06-09 10:07 ` Andrew Morton
2006-06-09 15:40 ` Jeff Garzik
2006-06-09 15:42 ` Matthew Wilcox
2006-06-09 15:51 ` Jeff Garzik
2006-06-09 17:29 ` Alan Cox
2006-06-09 16:56 ` Andrew Morton
2006-06-09 17:07 ` Jeff Garzik
2006-06-09 17:35 ` Andrew Morton
2006-06-09 17:48 ` Jeff Garzik
2006-06-09 17:59 ` Jeff Garzik
2006-06-09 18:27 ` [Ext2-devel] " Mike Snitzer
2006-06-09 18:54 ` Jeff Garzik
2006-06-09 19:22 ` Alex Tomas
2006-06-09 19:23 ` Jeff Garzik
2006-06-09 22:49 ` Valdis.Kletnieks
2006-06-09 23:34 ` [Ext2-devel] " Andreas Dilger
2006-06-10 13:49 ` Adrian Bunk
2006-06-10 13:51 ` Christoph Hellwig
2006-06-10 14:54 ` Jeff Garzik
2006-06-10 18:01 ` [Ext2-devel] " Andreas Dilger
2006-06-09 21:42 ` Sonny Rao
2006-06-09 22:15 ` Andrew Morton
2006-06-09 23:11 ` Andreas Dilger
2006-06-09 23:15 ` Jeff Garzik
2006-06-10 3:37 ` Valerie Henson
2006-06-10 3:49 ` Nathan Scott
2006-06-09 18:23 ` Michael Poole
2006-06-09 18:55 ` Jeff Garzik
2006-06-09 19:42 ` [Ext2-devel] " Gerrit Huizenga
2006-06-09 20:00 ` Jeff Garzik
2006-06-09 20:08 ` Alex Tomas
2006-06-09 20:10 ` [Ext2-devel] " Jeff Garzik
2006-06-09 20:35 ` Theodore Tso
2006-06-09 21:41 ` Jeff Garzik
2006-06-09 21:45 ` [Ext2-devel] " Michael Poole
2006-06-09 21:53 ` Jeff Garzik
2006-06-09 22:04 ` Theodore Tso
2006-06-10 0:49 ` Sven-Haegar Koch
2006-06-10 1:06 ` Theodore Tso
2006-06-10 14:07 ` Olivier Galibert
2006-06-10 19:52 ` Theodore Tso
2006-06-09 10:49 ` Andreas Dilger
2006-06-09 11:26 ` Alex Tomas
2006-06-09 14:23 ` [Ext2-devel] " Jeff Garzik
2006-06-09 14:33 ` Alex Tomas
2006-06-09 14:34 ` Alex Tomas
2006-06-09 14:35 ` Jeff Garzik
2006-06-09 14:57 ` Alex Tomas
2006-06-09 15:17 ` [Ext2-devel] " Jeff Garzik
2006-06-09 16:21 ` Mike Snitzer
2006-06-09 16:27 ` Jeff Garzik
2006-06-09 16:48 ` Alex Tomas
2006-06-09 16:51 ` Jeff Garzik
2006-06-09 16:33 ` Alex Tomas
2006-06-09 16:37 ` [Ext2-devel] " Jeff Garzik
2006-06-09 22:52 ` Valdis.Kletnieks
2006-06-09 23:21 ` Andreas Dilger
2006-06-10 1:21 ` Valdis.Kletnieks
2006-06-10 2:09 ` [Ext2-devel] " Andreas Dilger
2006-06-10 2:45 ` Nicholas Miell
2006-06-10 4:29 ` Andreas Dilger
2006-06-09 16:56 ` Andreas Dilger
2006-06-09 17:32 ` [Ext2-devel] " Greg KH
2006-06-09 18:48 ` Jeff Garzik
2006-06-30 0:16 ` [RFC][Update 0/16]extents and 48bit ext3/4 patches Mingming Cao
2006-06-30 0:16 ` [RFC][Update][Patch 1/16]core extent map support Mingming Cao
2006-06-30 0:17 ` [RFC][Update][Patch 2/16]sector_t type format string Mingming Cao
2006-06-30 0:17 ` [RFC][Update][Patch 3/16]convert ext3_fsblk_t to sector_t to support >32 bit block in kernel Mingming Cao
2006-06-30 0:17 ` [RFC][Update][Patch 4/16]support 48 bit blk number in extents Mingming Cao
2006-06-30 0:17 ` [RFC][Update][Patch 5/16]block type convert " Mingming Cao
2006-06-30 0:17 ` [RFC][Update][Patch 6/16]handing unitialized extents Mingming Cao
2006-06-30 0:17 ` [RFC][Update][Patch 7/16]Core 64 bit JBD changes Mingming Cao
2006-06-30 0:18 ` [RFC][Update][Patch 8/16]Avoid potential block overflow when writing journal metadata tags Mingming Cao
2006-06-30 0:18 ` [RFC][Update][Patch 9/16]Fix reading of 32-bit tag descriptors Mingming Cao
2006-06-30 0:18 ` [RFC][Update][Patch 10/16]Cleanup journal_tag_bytes() Mingming Cao
2006-06-30 0:18 ` [RFC][Update][Patch 11/16]JBD layer in-kernel block variables type fixes Mingming Cao
2006-06-30 0:18 ` [RFC][Update][Patch 12/16]Fix undefined ">> 32" in revoke code Mingming Cao
2006-06-30 3:15 ` H. Peter Anvin
2006-06-30 0:18 ` [RFC][Update][Patch 13/16] 48 bit on-disk i_file_acl support Mingming Cao
2006-06-30 0:19 ` [RFC][Update][Patch 14/16] 48bit super block (metadata) changes Mingming Cao
2006-06-30 0:19 ` [RFC][Update][Patch 15/16] compile warning fix and change 64bit to INCOMPAT feature Mingming Cao
2006-06-30 0:19 ` [RFC][Update][Patch 16/16]Update ext3 superblock definition Mingming Cao
[not found] <6lDZ6-6Hg-11@gated-at.bofh.it>
[not found] ` <6lFet-8vZ-1@gated-at.bofh.it>
[not found] ` <6lKHf-84q-19@gated-at.bofh.it>
[not found] ` <6lQMJ-sm-13@gated-at.bofh.it>
[not found] ` <6lR6f-Rx-33@gated-at.bofh.it>
[not found] ` <6lRpH-1h2-51@gated-at.bofh.it>
[not found] ` <6lRIT-1T1-23@gated-at.bofh.it>
[not found] ` <6lS26-2ho-7@gated-at.bofh.it>
[not found] ` <6lSvd-2Sh-15@gated-at.bofh.it>
[not found] ` <6lTKz-4Ru-9@gated-at.bofh.it>
[not found] ` <6lTUf-54A-17@gated-at.bofh.it>
[not found] ` <6lU3S-5h5-11@gated-at.bofh.it>
[not found] ` <6lU3X-5h5-35@gated-at.bofh.it>
[not found] ` <6lUnl-5GL-5@gated-at.bofh.it>
[not found] ` <6lUwX-66U-25@gated-at.bofh.it>
[not found] ` <6lUQo-6w3-29@gated-at.bofh.it>
[not found] ` <6lUQp-6w3-35@gated-at.bofh.it>
[not found] ` <6lUZT-6HS-3@gated-at.bofh.it>
[not found] ` <6nE4Z-4If-55@gated-at.bofh.it>
2006-06-14 16:45 ` [Ext2-devel] [RFC 0/13] extents and 48bit ext3 Bodo Eggert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.64.0606101248030.5498@g5.osdl.org \
--to=torvalds@osdl.org \
--cc=adilger@clusterfs.com \
--cc=akpm@osdl.org \
--cc=alex@clusterfs.com \
--cc=chase.venters@clientec.com \
--cc=cmm@us.ibm.com \
--cc=ext2-devel@lists.sourceforge.net \
--cc=jeff@garzik.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mrmacman_g4@mac.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).