From: Rob Landley <rob@landley.net>
To: Neil Brown <neilb@suse.de>
Cc: Theodore Tso <tytso@mit.edu>,
James Bottomley <James.Bottomley@steeleye.com>,
Matthew Wilcox <matthew@wil.cx>,
linux-kernel@vger.kernel.org, linux-scsi@vger.kernel.org,
Jens Axboe <axboe@suse.de>,
Suparna Bhattacharya <suparna@in.ibm.com>,
Nick Piggin <piggin@cyberone.com.au>
Subject: Re: What still uses the block layer?
Date: Mon, 15 Oct 2007 16:34:57 -0500 [thread overview]
Message-ID: <200710151634.57407.rob@landley.net> (raw)
In-Reply-To: <18195.19678.500863.613193@notabene.brown>
On Monday 15 October 2007 6:19:58 am Neil Brown wrote:
> On Monday October 15, rob@landley.net wrote:
> > This is my objection. Even when enumerating multiple devices of the same
> > type is tricky, enumerating multiple devices of _different_ types should
> > not be. There's a great big type indicator that is being _deliberately_
> > ignored, and large classes of devices (millions of laptops) where you
> > know there's only going to be _one_ instance of a given type.
>
> My perspective is different.
>
> The range of addressing option for "all disk devices" is far too rich
> to be able to assign a stable device number every device: there are
> multiple, multi-dimensional addressing scheme, and some devices might
> not even have a stable address at all (e.g. USB?).
> So the reality of dealing with disk devices is that you cannot provide
> a stable single-number naming scheme for all devices on all machines.
Sure.
> Therefore it is best to not have stable single-number naming schemes
> for any devices on any machines. Why? Because it ensure there will
> not be any second class citizens.
This is where we disagree. The existence of devices you cannot stably
enumerate does not eliminate the existence of devices you trivially can.
Pulling out the "IBM numa cluster with multiple SAS enclosures _and_ firewire"
infrastructure to find the root partition on my hard drive may be good for
the IBM numa clusters, but only at the expense of complicating this part of
my laptop's infrastructure by an order of magnitude, and making embedded
systems nearly impossible to put together. If "one size fits all" were true,
my cell phone would be running Red Hat Enterprise.
> If some devices that are even reasonably common (e.g. IDE drives) are
> stable, then some application developers or system integrators will
> work under the assumption of stability and whatever they build will
> break when you try it on different hardware.
So you break the IDE drives to get laptop users to debug the Niagra set? The
solution is to make the easy cases hard?
> This happened during the
> early days of SCSI support - code assumed the stability of
> major/minor numbers and so did not work properly with SCSI which
> cannot provide that stability in general.
In this case, I ripped the relevant infrastructure out by hand so fstab again
has /dev/sda. I can do it again on future systems. I'd just really rather
not have to.
> Having a totally uniform approach makes development and testing a lot
> easier - there are fewer special cases.
There are actually more special cases, you just expose more people to them.
> I would prefer that 'total uniformity' went even further than
> /dev/sd?? to /dev/disk??. i.e. Anything that is or behaves
> substantially like a disk drive should be "/dev/diskXX", where numbers
> are assigned sequentially on discovery. (I wonder why we need
> /dev/scdX to be separate from /dev/sdX).
It's /dev/srX here, and I have no idea.
I believe merging these namespaces invents problems, and was a bad idea. I
understand you're reasoning, but imposing the problems of mainframes onto
laptops does not strike me as an improvement for laptops.
> Note that stable names a still a very real option. udev provides
> several. /dev/disk-by-path/XXX will be stable for lots of "screwed
> in" devices. /dev/disk-by-id will be stable for devices the report a
> unique id. etc.
Here it's
ls /dev/disk/by-path/
pci-0000:00:1f.2-scsi-0:0:0:0 pci-0000:00:1f.2-scsi-0:0:0:0-part4
pci-0000:00:1f.2-scsi-0:0:0:0-part1 pci-0000:00:1f.2-scsi-0:0:0:0-part5
pci-0000:00:1f.2-scsi-0:0:0:0-part2 pci-0000:00:1f.2-scsi-0:0:0:0-part6
pci-0000:00:1f.2-scsi-0:0:0:0-part3 pci-0000:00:1f.2-scsi-1:0:0:0
And this is an improvement?
> The different between IDE, SATA, SCSI and even USB is peripheral for
> the large majority of uses, and I think maintaining the distinction in
> the major/minor number or in the "primary" /dev name is - for the
> above reasons - more of a cost that a value.
Is your definition of "the large majority of uses" where ncr Voyager, the
Amiga, and current macintosh laptops are all one use each, or is your
definition of "the large majority of uses" the one where each "use" is an
installation, of which there are millions of PCs (and even more ARM cell
phones), and something like three instances of Voyager?
I realize that both views are valid. This is why the US has a house and a
senate, and filters things through both views. My gripe is that forcing my
laptop to look at my USB devices to find my SATA hard drive is aligned with
only one of those viewpoints, and completely opposed to the other.
An approach that makes things much easier on laptops is seen to hurt big iron,
not because it the approach itself has a direct negative impact on big iron,
but only because then laptops are not saddled with the problems of big iron.
Why do you allow uni-processor kernel builds then?
> NeilBrown
Rob
--
"One of my most productive days was throwing away 1000 lines of code."
- Ken Thompson.
next prev parent reply other threads:[~2007-10-15 21:35 UTC|newest]
Thread overview: 93+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-12 1:11 What still uses the block layer? Rob Landley
2007-10-13 22:05 ` Matthew Wilcox
2007-10-14 5:54 ` David Newall
2007-10-14 17:46 ` Stefan Richter
2007-10-14 22:35 ` Tilman Schmidt
2007-10-14 23:36 ` Rob Landley
2007-10-15 1:23 ` Neil Brown
2007-10-15 5:44 ` Stefan Richter
2007-10-15 9:26 ` Rob Landley
2007-10-15 16:08 ` Matthew Wilcox
2007-10-15 17:10 ` Stefan Richter
2007-10-16 3:06 ` david
2007-10-16 5:56 ` Stefan Richter
2007-10-16 10:19 ` Alan Cox
2007-10-16 19:54 ` david
2007-10-16 19:54 ` Matthew Wilcox
2007-10-16 20:18 ` Stefan Richter
2007-10-16 20:34 ` Theodore Tso
2007-10-16 20:56 ` Stefan Richter
2007-10-16 20:55 ` david
2007-10-16 21:49 ` Alan Cox
2007-10-17 9:48 ` Gabor Gombas
2007-10-17 17:23 ` Stefan Richter
2007-10-17 21:04 ` david
2007-10-15 20:29 ` Wilfried Klaebe
2007-10-14 22:24 ` James Bottomley
2007-10-14 23:45 ` Rob Landley
2007-10-15 1:45 ` Theodore Tso
2007-10-15 8:04 ` Rob Landley
2007-10-15 9:06 ` Julian Calaby
2007-10-15 10:08 ` Rob Landley
2007-10-15 17:33 ` Greg KH
2007-10-16 2:54 ` david
2007-10-16 4:04 ` Matthew Wilcox
2007-10-16 4:11 ` Arjan van de Ven
2007-10-16 4:15 ` david
2007-10-16 4:21 ` Greg KH
2007-10-16 5:00 ` david
[not found] ` <646765f40710150327i78519a0fvaea7a83d5975b180@mail.gmail.com>
[not found] ` <200710151511.29748.rob@landley.net>
2007-10-15 23:49 ` Julian Calaby
2007-10-15 10:32 ` Loïc Grenié
2007-10-15 21:09 ` Rob Landley
2007-10-15 11:19 ` Neil Brown
2007-10-15 21:34 ` Rob Landley [this message]
2007-10-15 21:46 ` Jeff Garzik
2007-10-15 22:01 ` Alan Cox
2007-10-15 23:41 ` Neil Brown
2007-10-16 2:12 ` david
2007-10-15 13:21 ` Theodore Tso
2007-10-15 13:29 ` Alan Cox
2007-10-15 13:35 ` Theodore Tso
2007-10-15 17:44 ` Jeff Garzik
2007-10-15 14:46 ` Douglas Gilbert
2007-10-16 2:51 ` david
2007-10-15 13:37 ` OOM killer gripe (was Re: What still uses the block layer?) Nick Piggin
2007-10-15 9:52 ` Rob Landley
2007-10-15 15:08 ` Nick Piggin
2007-10-16 6:22 ` David Newall
2007-10-20 9:48 ` Pavel Machek
2007-10-15 11:40 ` Theodore Tso
2007-10-20 9:50 ` Pavel Machek
2007-10-16 3:55 ` Eric W. Biederman
2007-10-16 4:10 ` david
2007-10-16 4:45 ` Eric W. Biederman
2007-10-16 6:59 ` Nick Piggin
2007-10-16 4:38 ` Eric W. Biederman
2007-10-16 6:38 ` Rob Landley
2007-10-16 9:31 ` Eric W. Biederman
2007-10-16 10:28 ` Alan Cox
2007-10-16 23:59 ` Rob Landley
2007-10-16 7:34 ` Nick Piggin
2007-10-18 13:00 ` Rogier Wolff
2007-10-19 6:49 ` Rob Landley
2007-10-19 7:21 ` Rogier Wolff
2007-10-16 20:37 ` Andrew Morton
2007-10-17 5:34 ` What still uses the block layer? Valdis.Kletnieks
2007-10-17 6:07 ` david
2007-10-15 6:00 ` Greg KH
2007-10-15 8:36 ` Rob Landley
2007-10-15 13:08 ` Alan Cox
2007-10-15 14:00 ` Arjan van de Ven
2007-10-15 18:56 ` Matthew Garrett
2007-10-15 17:25 ` Greg KH
2007-10-15 18:00 ` Matthew Wilcox
2007-10-15 18:46 ` Jeff Garzik
2007-10-16 6:33 ` Stefan Richter
2007-10-17 23:43 ` Bill Davidsen
2007-10-15 22:54 ` Rob Landley
2007-10-15 8:52 ` Christoph Hellwig
2007-10-15 13:10 ` James Bottomley
2007-10-15 21:51 ` Rob Landley
2007-10-15 0:45 ` Luben Tuikov
2007-10-15 6:51 ` Rob Landley
2007-10-15 8:37 ` Luben Tuikov
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=200710151634.57407.rob@landley.net \
--to=rob@landley.net \
--cc=James.Bottomley@steeleye.com \
--cc=axboe@suse.de \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=matthew@wil.cx \
--cc=neilb@suse.de \
--cc=piggin@cyberone.com.au \
--cc=suparna@in.ibm.com \
--cc=tytso@mit.edu \
/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