From: Brian Wheeler <bdwheele@wombat.educ.indiana.edu>
To: linux-kernel@vger.kernel.org
Subject: Re: LANANA: To Pending Device Number Registrants
Date: Thu, 17 May 2001 15:00:00 -0500 (EST) [thread overview]
Message-ID: <200105172000.f4HK00V19810@wombat.educ.indiana.edu> (raw)
[ I normally just lurk and read the archives, but...here's where I get into
trouble! ]
It seems to me that there are several issues that have come up in this thread,
but here are my thoughts on some of them:
* Identifying hardware:
Since we don't want to use topology as the primary method of
identifying a device, perhaps it could be the secondary method. If a device
id consisted of several parts, userspace could make an educated guess about
which devices correspond to which names, across reboots. Consider an ID
consisting of:
* vendor
* model
* serial number
* content-cookie
* topology-cookie
The two cookie values are opaque, but reproducable. The content cookie might
be an MD5 of the partition table of a disk, or its serial number, or
something to that effect. The topology cookie would some topology
parameters (such as mem address, irq, io ports, slot #, etc) which could be
used to identify the device later. These are only used for identification,
not for discovering topology.
If all 5 fields match, then we know what it is. If only topology-cookie is
different, then it just moved. If content-cookie is different then it might
be a different device (There's a trickyness to partitioning, I suppose).
I suppose these ID fields could also be used by a userspace tool to
load/unload drivers as necessary.
The id could also determine the device is only inaccessable (not removed)
when it disappears. So, if disk5 disappeared on reboot, the next disk
added would be given an ID at the end of the list, while disk5 would remain
unused. Only on a 'cleanup' would disk5 become reassignable. This fixes
issues like a device being unpowered on boot and a new one being powered up.
* User-space device naming
I think the diskN naming is nice. "randomly assigned" major ids won't be a
problem, except on NFS mounted /dev directories. If the kernel maintained
a filesystem (like devfs or proc) which always managed the "currently
available" devices the only problem to solve would be dealing with software
which opens the /dev node to get a driver loaded.
<pipe_dream>
It would be very cool if the dev filesystem could be exported to other linux
boxes, so you could transparently have access to block devices (like nbd does
now) and character devices (like the sound card)
mount -t dev -o other_machine /dev/other_machine
cat foo.au > /dev/other_machine/audio &
</pipe_dream>
* IOCTL
Since ioctl() is commonly regarded as a kluge, is there any reason why it
couldn't be replaced by the /dev/fb0/frame0 thing that was described earlier?
The libc implementation of ioctl could convert the binary data back into
text calls. Gross, but possible...though it would probably be better to just
depreciate the ioctl mechanism. It could also package it for remote
usage (see my pipe_dream above).
If device info/controls are tied to subdirectory entries, it would be nice
to be able to get a device's capabilities via existance checking...
I.E. '-e /dev/disk0/eject' could check of the device is ejectable.
Brian Wheeler
bdwheele@indiana.edu
next reply other threads:[~2001-05-17 19:47 UTC|newest]
Thread overview: 319+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-05-17 20:00 Brian Wheeler [this message]
2001-05-18 8:24 ` LANANA: To Pending Device Number Registrants Tim Jansen
2001-05-18 8:27 ` Alan Cox
2001-05-18 14:06 ` Brian Wheeler
-- strict thread matches above, loose matches on Subject: below --
2001-05-17 8:58 Andries.Brouwer
2001-05-17 0:18 Andries.Brouwer
2001-05-17 1:18 ` Mike Anderson
2001-05-17 2:46 ` Willem Konynenberg
2001-05-17 9:42 ` Michael Meissner
2001-05-17 0:09 Dunlap, Randy
2001-05-16 15:06 Khachaturov, Vassilii
2001-05-16 13:13 Jesse Pollard
2001-05-16 13:11 mike_phillips
2001-05-18 18:23 ` Mark H. Wood
2001-05-16 9:56 Chemolli Francesco (USI)
2001-05-16 11:18 ` Helge Hafting
2001-05-16 12:09 ` Thomas Kotzian
2001-05-16 18:58 ` Heinz J. Mauelshagen
2001-05-17 6:35 ` Albert D. Cahalan
2001-05-17 9:39 ` Guest section DW
2001-05-21 7:16 ` Albert D. Cahalan
2001-05-18 15:57 ` Heinz J. Mauelshagen
2001-05-16 12:12 ` Oystein Viggen
2001-05-16 12:45 ` Josh Fryman
2001-05-16 13:28 ` Helge Hafting
2001-05-16 18:37 ` Hacksaw
2001-05-16 16:30 ` Miles Lane
2001-05-16 16:18 ` Michael Meissner
2001-05-18 14:17 ` Stephen C. Tweedie
2001-05-19 5:29 ` Chris Wedgwood
2001-05-19 16:43 ` Stephen C. Tweedie
2001-05-19 18:21 ` Hans Reiser
2001-05-19 20:20 ` Michael Meissner
2001-05-21 13:34 ` Stephen C. Tweedie
2001-05-16 15:14 ` Jonathan Lundell
2001-05-16 0:01 Bingner Sam J. Contractor RSIS
2001-05-16 11:08 ` Alex Bligh - linux-kernel
2001-05-15 23:49 Bingner Sam J. Contractor RSIS
2001-05-16 7:10 ` Andrzej Krzysztofowicz
2001-05-16 18:25 ` Richard Gooch
2001-05-15 23:16 David Brownell
2001-05-15 23:35 ` Alexander Viro
2001-05-16 0:13 ` David Brownell
2001-05-15 23:56 ` Tim Jansen
2001-05-16 0:41 ` Miles Lane
2001-05-16 16:55 ` James Simmons
2001-05-17 6:12 ` Miles Lane
2001-05-17 12:07 ` Oliver Neukum
2001-05-17 16:34 ` Tim Jansen
2001-05-17 17:03 ` David Brownell
2001-05-17 16:17 ` David Brownell
2001-05-17 16:56 ` James Simmons
2001-05-15 22:49 David Brownell
2001-05-15 22:21 David Brownell
2001-05-15 23:17 ` Andreas Dilger
2001-05-15 23:35 ` David Brownell
2001-05-15 23:55 ` Jonathan Lundell
2001-05-17 18:39 ` Mark H. Wood
2001-05-15 21:27 Timothy A. Seufert
2001-05-15 21:38 ` Alexander Viro
2001-05-16 7:23 ` Geert Uytterhoeven
2001-05-16 15:50 ` Mo McKinlay
2001-05-15 21:26 Andrzej Krzysztofowicz
[not found] <mng==Pine.LNX.4.10.10105151151380.22038-100000@www.transvirtual.com>
[not found] ` <mng==Pine.LNX.4.21.0105151043360.2112-100000@penguin.transmeta.com>
2001-05-15 20:59 ` Jens-Uwe Mager
2001-05-15 17:00 David Balazic
2001-05-16 17:02 ` Hacksaw
2001-05-16 17:19 ` Mathieu Chouquet-Stringer
2001-05-16 20:05 ` James Simmons
2001-05-16 20:13 ` Mathieu Chouquet-Stringer
2001-05-16 20:16 ` James Simmons
2001-05-16 20:21 ` Mathieu Chouquet-Stringer
2001-05-14 19:19 H. Peter Anvin
2001-05-14 19:36 ` Jeff Garzik
2001-05-14 19:57 ` H. Peter Anvin
2001-05-14 20:04 ` Jeff Garzik
2001-05-14 20:09 ` Alan Cox
2001-05-14 20:24 ` Jeff Garzik
2001-05-14 20:27 ` H. Peter Anvin
2001-05-14 22:21 ` Alan Cox
2001-05-14 23:43 ` Jan Niehusmann
2001-05-14 23:48 ` Alan Cox
2001-05-14 20:29 ` Linus Torvalds
2001-05-14 20:55 ` Neil Brown
2001-05-14 21:20 ` Alan Cox
2001-05-14 21:37 ` Neil Brown
2001-05-14 21:24 ` Jeff Garzik
2001-05-14 21:33 ` Neil Brown
2001-05-15 6:41 ` Linus Torvalds
2001-05-15 8:57 ` Alan Cox
2001-05-15 9:08 ` Linus Torvalds
2001-05-15 9:26 ` Alan Cox
2001-05-15 9:49 ` Alexander Viro
2001-05-15 9:51 ` Alan Cox
2001-05-15 10:12 ` Alexander Viro
2001-05-15 10:36 ` Alan Cox
2001-05-15 15:16 ` Linus Torvalds
2001-05-15 20:55 ` Alan Cox
2001-05-15 15:10 ` Linus Torvalds
2001-05-15 15:29 ` Alexander Viro
2001-05-15 17:21 ` James Simmons
2001-05-15 17:25 ` Alexander Viro
2001-05-15 17:29 ` James Simmons
2001-05-15 17:32 ` Alexander Viro
2001-05-15 17:44 ` James Simmons
2001-05-15 18:18 ` Ingo Oeser
2001-05-15 18:36 ` James Simmons
2001-05-15 18:42 ` Alexander Viro
2001-05-16 8:29 ` Helge Hafting
2001-05-16 17:16 ` James Simmons
2001-05-15 21:46 ` Chip Salzenberg
2001-05-15 21:50 ` James Simmons
2001-05-15 18:04 ` Linus Torvalds
2001-05-15 18:58 ` Johannes Erdfelt
2001-05-15 19:17 ` Linus Torvalds
2001-05-15 19:23 ` H. Peter Anvin
2001-05-15 19:43 ` Johannes Erdfelt
2001-05-15 21:58 ` Chip Salzenberg
2001-05-16 8:51 ` Helge Hafting
2001-05-17 10:20 ` Pavel Machek
2001-05-18 17:32 ` Johannes Erdfelt
2001-05-19 10:21 ` Pavel Machek
2001-05-19 8:18 ` Kai Henningsen
2001-05-17 20:40 ` Kai Henningsen
2001-05-17 22:46 ` Johannes Erdfelt
2001-05-15 20:03 ` James Simmons
2001-05-15 20:06 ` H. Peter Anvin
2001-05-15 20:28 ` James Simmons
2001-05-15 21:20 ` Nicolas Pitre
2001-05-15 21:28 ` James Simmons
2001-05-15 21:31 ` H. Peter Anvin
2001-05-15 21:43 ` Johannes Erdfelt
2001-05-15 21:49 ` James Simmons
2001-05-16 7:05 ` Kai Henningsen
2001-05-15 22:07 ` Alan Cox
2001-05-16 7:11 ` Kai Henningsen
2001-05-16 7:43 ` Alexander Viro
2001-05-16 9:45 ` Malcolm Beattie
2001-05-16 0:59 ` Daniel Phillips
2001-05-16 1:34 ` Nicolas Pitre
2001-05-16 1:51 ` Jonathan Lundell
2001-05-16 11:34 ` Erik Mouw
2001-05-17 17:07 ` Eric W. Biederman
2001-05-17 19:30 ` Jeff Randall
2001-05-16 7:17 ` Kai Henningsen
2001-05-15 20:14 ` Alexander Viro
2001-05-15 20:30 ` H. Peter Anvin
2001-05-15 20:41 ` Alexander Viro
2001-05-15 20:51 ` Linus Torvalds
2001-05-16 1:01 ` Daniel Phillips
2001-05-16 1:04 ` H. Peter Anvin
2001-05-15 20:37 ` Linus Torvalds
2001-05-15 20:56 ` Jeff Garzik
2001-05-15 21:22 ` James Simmons
2001-05-17 10:42 ` Pavel Machek
2001-05-18 18:32 ` James Simmons
2001-05-15 20:57 ` James Simmons
2001-05-17 20:33 ` Kai Henningsen
2001-05-15 20:17 ` H. Peter Anvin
2001-05-15 21:59 ` Chip Salzenberg
2001-05-15 22:51 ` James Simmons
2001-05-15 21:22 ` Jan Harkes
2001-05-15 21:39 ` Martin Dalecki
2001-05-15 18:02 ` Ingo Oeser
2001-05-15 19:31 ` Richard Gooch
2001-05-15 19:37 ` H. Peter Anvin
2001-05-15 20:10 ` Alan Cox
2001-05-15 21:41 ` Richard Gooch
2001-05-15 21:47 ` Alexander Viro
2001-05-15 22:14 ` Alan Cox
2001-05-15 22:24 ` Richard Gooch
2001-05-15 22:27 ` H. Peter Anvin
2001-05-15 22:38 ` Alexander Viro
2001-05-15 22:28 ` Richard Gooch
2001-05-15 22:32 ` H. Peter Anvin
2001-05-15 22:33 ` Alan Cox
2001-05-16 7:21 ` Geert Uytterhoeven
2001-05-16 18:22 ` Richard Gooch
2001-05-16 19:36 ` H. Peter Anvin
2001-05-16 20:01 ` Richard Gooch
2001-05-16 20:05 ` H. Peter Anvin
2001-05-16 20:18 ` Linus Torvalds
2001-05-16 20:44 ` Richard Gooch
2001-05-16 20:54 ` Richard Gooch
2001-05-16 21:36 ` H. Peter Anvin
2001-05-16 22:11 ` Ingo Oeser
2001-05-16 22:13 ` H. Peter Anvin
2001-05-16 22:21 ` Jens Axboe
2001-05-16 23:03 ` Richard Gooch
2001-05-16 23:25 ` H. Peter Anvin
2001-05-16 23:37 ` Richard Gooch
2001-05-16 23:38 ` H. Peter Anvin
2001-05-16 23:41 ` Richard Gooch
2001-05-16 23:43 ` H. Peter Anvin
2001-05-16 23:49 ` Richard Gooch
2001-05-16 23:55 ` H. Peter Anvin
2001-05-17 21:12 ` Kai Henningsen
2001-05-17 21:06 ` Kai Henningsen
2001-05-16 23:51 ` Alan Cox
2001-05-16 23:58 ` Richard Gooch
2001-05-17 0:12 ` H. Peter Anvin
2001-05-17 0:24 ` Alan Cox
2001-05-17 1:35 ` Jeff Garzik
2001-05-17 9:33 ` Guest section DW
2001-05-15 20:58 ` Alan Cox
2001-05-15 21:42 ` Chip Salzenberg
2001-05-15 21:46 ` Alexander Viro
2001-05-15 21:57 ` H. Peter Anvin
2001-05-15 22:07 ` Chip Salzenberg
2001-05-15 22:11 ` H. Peter Anvin
2001-05-15 22:18 ` Alan Cox
2001-05-15 21:40 ` Chip Salzenberg
2001-05-15 22:12 ` Alan Cox
2001-05-15 22:19 ` H. Peter Anvin
2001-05-15 22:28 ` Alan Cox
2001-05-15 22:34 ` H. Peter Anvin
2001-05-15 23:39 ` Chip Salzenberg
2001-05-16 20:37 ` Alan Cox
2001-05-15 22:49 ` James Simmons
2001-05-15 23:22 ` Kenneth Johansson
2001-05-15 9:28 ` Alan Cox
2001-05-15 15:15 ` Linus Torvalds
2001-05-15 15:19 ` Jeff Garzik
2001-05-15 15:45 ` Linus Torvalds
2001-05-15 17:27 ` James Simmons
2001-05-15 17:43 ` Linus Torvalds
2001-05-15 18:04 ` Jeff Garzik
2001-05-15 18:15 ` Linus Torvalds
2001-05-15 19:36 ` Jonathan Lundell
2001-05-15 20:18 ` Linus Torvalds
2001-05-15 20:26 ` Dan Hollis
2001-05-15 22:14 ` Miles Lane
2001-05-15 21:29 ` Alex Bligh - linux-kernel
2001-05-15 21:36 ` Linus Torvalds
2001-05-15 22:03 ` Jeff Mahoney
2001-05-15 22:42 ` Andreas Dilger
2001-05-15 21:51 ` Mark Frazer
2001-05-15 22:35 ` Bob Glamm
2001-05-16 0:56 ` Jonathan Lundell
2001-05-16 2:31 ` Andrew Morton
2001-05-16 6:56 ` Jonathan Lundell
2001-05-16 8:02 ` Vojtech Pavlik
2001-05-16 12:20 ` Bogdan Costescu
2001-05-16 14:37 ` Jonathan Lundell
2001-05-16 14:57 ` Vojtech Pavlik
2001-05-16 15:24 ` Jonathan Lundell
2001-05-16 7:24 ` Geert Uytterhoeven
2001-05-16 23:26 ` Alan Cox
2001-05-16 23:31 ` H. Peter Anvin
2001-05-16 23:53 ` Linus Torvalds
2001-05-17 0:21 ` Alan Cox
2001-05-17 7:57 ` Geert Uytterhoeven
2001-05-17 16:26 ` James Simmons
2001-05-17 6:43 ` Thomas Sailer
2001-05-17 16:58 ` Tim Jansen
2001-05-17 17:18 ` James Simmons
2001-05-17 17:29 ` Geert Uytterhoeven
2001-05-17 17:41 ` Tim Jansen
2001-05-17 22:03 ` Oliver Neukum
2001-05-16 23:52 ` Linus Torvalds
2001-05-17 1:26 ` Joel Becker
2001-05-16 16:04 ` Michael Meissner
2001-05-16 21:36 ` Andreas Dilger
2001-05-18 2:18 ` Jonathan Lundell
2001-05-19 17:36 ` Jonathan Lundell
2001-05-20 9:37 ` Eric W. Biederman
2001-05-20 14:16 ` Chris Wedgwood
2001-05-20 15:54 ` Jonathan Lundell
2001-05-20 15:57 ` Jonathan Lundell
2001-05-19 17:45 ` Jonathan Lundell
2001-05-19 8:42 ` Kai Henningsen
2001-05-17 21:23 ` Kai Henningsen
2001-05-15 19:33 ` Kai Henningsen
2001-05-16 7:25 ` Geert Uytterhoeven
2001-05-15 18:19 ` James Simmons
2001-05-15 20:23 ` Alan Cox
2001-05-15 20:28 ` H. Peter Anvin
2001-05-15 21:52 ` Andreas Dilger
2001-05-15 20:02 ` Dan Hollis
2001-05-15 11:44 ` Neil Brown
2001-05-15 15:34 ` Linus Torvalds
2001-05-16 1:00 ` Daniel Phillips
2001-05-16 12:58 ` Jens Axboe
2001-05-16 3:25 ` Neil Brown
2001-05-15 15:51 ` John Fremlin
2001-05-14 21:09 ` Andi Kleen
2001-05-14 21:11 ` Rik van Riel
2001-05-14 21:23 ` Alan Cox
2001-05-15 0:33 ` Rik van Riel
2001-05-16 9:04 ` Ingo Oeser
2001-05-14 21:16 ` Alan Cox
2001-05-14 22:05 ` Alexander Viro
2001-05-14 22:30 ` Alan Cox
2001-05-14 22:48 ` Alexander Viro
2001-05-14 22:46 ` Alan Cox
2001-05-14 22:53 ` Alexander Viro
2001-05-14 22:54 ` H. Peter Anvin
2001-05-14 23:00 ` Alexander Viro
2001-05-14 22:58 ` Alan Cox
2001-05-14 23:29 ` Alexander Viro
2001-05-15 4:20 ` God
2001-05-14 23:39 ` Richard Gooch
2001-05-14 23:18 ` Arjan van de Ven
2001-05-14 23:20 ` Alan Cox
2001-05-15 18:57 ` Kai Henningsen
2001-05-15 5:56 ` Oliver Neukum
2001-05-15 5:59 ` H. Peter Anvin
2001-05-14 22:55 ` Alan Cox
2001-05-14 23:11 ` Dan Hollis
2001-05-14 23:19 ` Alan Cox
2001-05-14 23:23 ` Alexander Viro
2001-05-15 1:10 ` Keith Owens
2001-05-14 23:34 ` Richard Gooch
2001-05-14 21:18 ` Alan Cox
2001-05-14 23:32 ` Richard Gooch
2001-05-14 20:09 ` Richard Gooch
2001-05-14 20:14 ` Jeff Garzik
2001-05-15 17:37 ` Pavel Machek
2001-05-17 11:32 ` Alan Cox
2001-05-16 15:58 ` Kurt Garloff
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=200105172000.f4HK00V19810@wombat.educ.indiana.edu \
--to=bdwheele@wombat.educ.indiana.edu \
--cc=linux-kernel@vger.kernel.org \
/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).