mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Olivier Galibert <galibert@pobox.com>
To: ajwade@cpe001346162bf9-cm0011ae8cd564.cpe.net.cable.rogers.com
Cc: Greg KH <greg@kroah.com>, linux-kernel@vger.kernel.org
Subject: Re: Device enumeration (was Re: CD writing in future Linux (stirring up a hornets' nest))
Date: Tue, 14 Feb 2006 11:40:04 +0100	[thread overview]
Message-ID: <20060214104003.GA97714@dspnet.fr.eu.org> (raw)
In-Reply-To: <200602140023.15771.ajwade@cpe001346162bf9-cm0011ae8cd564.cpe.net.cable.rogers.com>

On Tue, Feb 14, 2006 at 12:23:15AM -0500, Andrew James Wade wrote:
> On Monday 13 February 2006 14:53, Olivier Galibert wrote:
> > Problem: finding and talking to all the devices which have capability
> > <x>, as long as the system administrator allows.
> ... 
> > At that point, we get several answers:
> ...
> > 4- sysfs has all the information you need, just read it
> ...
> > Answer 4 would be very nice if it was correct.  sysfs is pretty much
> > mandatory at that point, and modulo some fixable incompleteness
> > provides all the capability information and model names and everything
> > needed to find the useful devices.  What it does not provide is the
> > mapping between a device as found in sysfs, and a device node you can
> > open to talk to the device. You get the major/minor, which allows you 
> > to create a temporary device node iff you're root.  Or you can scan
> > all the nodes in /dev to find the one to open, which is kinda
> > ridiculous and inefficient.  Or you have to go back to udev/hal to ask
> > for the sysfs node/device node path mapping, and then why use sysfs in
> > the first place.
>      They're providing different things. Enumerating devices (as the kernel
> sees them) is sysfs's business. Providing device nodes is not the kernel's
> business, and should not be. (The kernel doesn't know the appropriate
> permissions). And while it can be used to enumerate devices, that's not
> really the function of /dev. It's providing the device nodes with the
> appropriate permissions, and hopefully with names that are meaningful
> to the users. So you really need both sysfs and /dev.

Indeed.


> The difficulty is the mapping between sysfs and /dev.

Which is what I say each time.


> That mapping should not live in sysfs,
> /dev is none of the kernel's business and sysfs is the kernel's playground.

Why not have udev and whatever comes after tell the kernel so that a
symlink is done in sysfs?  The kernel not deciding policy do not
prevent it from storing and giving back userland-provided information.
You get the best of both worlds, complete device information including
how to talk with it in sysfs, and complete naming and policy setting
in userspace.

> 
>      The mapping could be provided via symlinks, like so:
> 
> /dev/rdev/block/hdb/hdb1 -> /dev/hdb1
> /dev/rdev/block/hdb -> /dev/hdb
> /dev/rdev/block/hda/hda2 -> /dev/hda2
> /dev/rdev/block/hda/hda1 -> /dev/hda1
> /dev/rdev/block/hda -> /dev/hda

Why manage a directory tree in udev when you have a perfectly good one
in sysfs already.  We're talking about a friggin' userland-provided
string here, nothing more.


> But I don't know if there is much point in doing so as udev already
> provides that information.

I guess you didn't bother to read the "answer 3" paragraph of my
email.  Do you trust udev to still exist two years from now, given
that hotplug died in less than that?  Do you trust udevinfo to have
the same interface two years from now given that the current interface
is already incompatible with a not even two-years old one (udev 039,
15-Oct-2004 according to kernel.org) which is widely deployed as part
of fedora core 3?

Of course I can always go the ALSA way, hardcode the device names and
tell udev (and the user) to fuck off.

  OG.


  reply	other threads:[~2006-02-14 10:40 UTC|newest]

Thread overview: 177+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-25  3:23 CD writing in future Linux (stirring up a hornets' nest) Albert Cahalan
2006-01-25 14:26 ` Jan Engelhardt
2006-01-25 14:45   ` Jens Axboe
2006-01-25 15:13     ` Jan Engelhardt
2006-01-25 15:30       ` Jens Axboe
2006-01-25 17:03         ` Joerg Schilling
2006-01-25 17:11           ` Matthias Andree
2006-01-25 17:18           ` grundig
2006-01-25 17:31             ` Jens Axboe
2006-01-25 18:22               ` Matthias Andree
2006-01-25 18:25                 ` Jens Axboe
2006-01-25 23:14                   ` Matthias Andree
2006-01-26  1:13                     ` grundig
2006-01-26  8:23                       ` Matthias Andree
2006-01-26 13:56                         ` Joerg Schilling
2006-01-26 18:47                           ` Jan Engelhardt
2006-01-30 21:58                           ` Bill Davidsen
2006-01-26 13:41                       ` Joerg Schilling
2006-01-26  0:36                 ` Nix
2006-01-26 13:39                   ` Joerg Schilling
2006-02-10 21:06                   ` Bill Davidsen
     [not found]                     ` <20060210184241.35332e78.seanlkml@sympatico.ca>
2006-02-10 23:42                       ` sean
2006-02-10 23:51                     ` Christian Neumair
2006-02-13 13:24                       ` Joerg Schilling
2006-02-13 13:55                         ` Martin Mares
2006-02-13 15:17                           ` Joerg Schilling
2006-02-18 13:47                             ` Bill Davidsen
2006-02-19  1:10                               ` D. Hazelton
2006-02-19  9:20                                 ` Matthias Andree
2006-02-20  1:53                                   ` D. Hazelton
2006-02-20 16:41                                     ` Joerg Schilling
2006-02-20 18:40                                       ` D. Hazelton
2006-02-21 10:08                                         ` Joerg Schilling
2006-02-21 10:20                                           ` Matthias Andree
2006-02-21  4:11                                       ` D. Hazelton
2006-02-21 10:36                                         ` Joerg Schilling
2006-02-24 19:46                                           ` Christian Neumair
2006-02-27 11:32                                             ` Joerg Schilling
2006-02-20 16:05                               ` Joerg Schilling
2006-02-20 18:53                                 ` D. Hazelton
2006-02-20 22:30                                   ` Martin Schlemmer
2006-02-21  8:32                                   ` Jens Axboe
2006-02-21 10:19                                   ` Joerg Schilling
2006-02-21 10:23                                     ` Jens Axboe
2006-02-13 14:07                         ` jerome lacoste
2006-02-13 15:26                           ` Joerg Schilling
2006-02-13 15:42                             ` jerome lacoste
2006-02-13 16:43                         ` Jan Engelhardt
2006-02-13 17:27                           ` Luke-Jr
2006-02-14  8:11                             ` Jan Engelhardt
2006-02-14  0:01                         ` D. Hazelton
2006-02-14 13:59                           ` Joerg Schilling
2006-02-10 23:56                     ` Greg KH
2006-02-12 12:04                       ` Olivier Galibert
2006-02-12 16:46                         ` Greg KH
2006-02-12 21:14                           ` Olivier Galibert
2006-02-12 21:49                             ` Krzysztof Halasa
2006-02-13  6:24                             ` Greg KH
2006-02-13 16:49                               ` Olivier Galibert
2006-02-13 17:50                                 ` Greg KH
2006-02-13 19:53                                   ` Device enumeration (was Re: CD writing in future Linux (stirring up a hornets' nest)) Olivier Galibert
2006-02-14  5:23                                     ` Andrew James Wade
2006-02-14 10:40                                       ` Olivier Galibert [this message]
2006-02-14 22:24                                         ` Greg KH
2006-02-14 23:00                                           ` Olivier Galibert
2006-02-14 23:45                                             ` Greg KH
2006-02-15 15:01                                               ` Olivier Galibert
2006-02-14 22:32                                         ` Rob Landley
2006-02-14 23:17                                           ` Olivier Galibert
2006-02-15  0:24                                             ` Rob Landley
2006-02-15  0:54                                               ` Greg KH
2006-02-15  3:18                                                 ` Rob Landley
2006-02-15 16:55                                               ` Olivier Galibert
2006-02-15 18:19                                                 ` Rob Landley
2006-02-14 23:32                                           ` Olivier Galibert
2006-02-15  1:50                                             ` Rob Landley
2006-02-14 23:47                                           ` Greg KH
2006-02-15  2:07                                             ` Rob Landley
2006-02-15 13:42                                         ` Andrew James Wade
2006-02-15 14:54                                           ` Olivier Galibert
2006-02-14 11:53                                     ` Michael Tokarev
2006-02-13  5:01                       ` CD writing in future Linux (stirring up a hornets' nest) Daniel Barkalow
2006-02-13  6:21                         ` Greg KH
2006-02-13  8:05                           ` Daniel Barkalow
2006-02-13 17:51                             ` Greg KH
2006-02-13 18:03                               ` Dmitry Torokhov
2006-02-13 19:09                                 ` Daniel Barkalow
2006-02-17 21:35                                   ` Bill Davidsen
2006-02-18  0:02                                     ` D. Hazelton
2006-02-18 16:56                                       ` Bill Davidsen
2006-02-19  0:29                                         ` D. Hazelton
2006-02-18  0:35                                     ` Greg KH
2006-02-18 12:06                                     ` Christoph Hellwig
2006-02-18 13:37                                       ` Martin Michlmayr
2006-02-18 13:52                                         ` Christoph Hellwig
2006-02-19 12:04                                           ` Jens Axboe
2006-02-18 17:15                                       ` Gene Heskett
2006-02-19  0:41                                         ` D. Hazelton
2006-02-19  5:44                                           ` Gene Heskett
2006-02-19  9:27                                           ` Matthias Andree
2006-02-27 20:23                                             ` Bill Davidsen
2006-02-19 18:50                                         ` Daniel Barkalow
2006-02-18 18:36                                       ` Chris Adams
2006-02-19  1:05                                         ` D. Hazelton
2006-02-27 20:24                                         ` Bill Davidsen
2006-02-27 21:21                                           ` Chris Adams
2006-02-27 21:47                                             ` D. Hazelton
2006-02-27 22:30                                               ` Peter Gordon
2006-02-27 22:24                                                 ` D. Hazelton
2006-02-28  0:44                                                   ` Sam Vilain
2006-02-13 13:26                       ` Joerg Schilling
2006-02-13 15:49                         ` Greg KH
2006-02-14 18:59                           ` Joerg Schilling
2006-02-14 19:53                             ` Matthias Andree
2006-02-14 19:58                               ` Joerg Schilling
2006-02-14 20:25                                 ` Matthias Andree
2006-02-14 22:35                                 ` D. Hazelton
2006-02-14 22:32                             ` D. Hazelton
2006-02-14 18:59                           ` Olivier Galibert
2006-02-14 19:01                           ` Bill Davidsen
2006-02-14 22:33                             ` Nix
2006-02-15 15:44                           ` Jan Engelhardt
2006-02-15 16:40                             ` Olivier Galibert
2006-02-15 17:07                             ` Greg KH
2006-02-13 22:14                         ` Nix
2006-02-14  0:03                           ` D. Hazelton
2006-02-14  0:32                             ` Nix
2006-02-14  9:22                           ` Matthias Andree
2006-02-14 18:09                             ` Jan Engelhardt
2006-02-14 18:41                               ` Olivier Galibert
2006-02-17 15:36                                 ` Jan Engelhardt
2006-02-14 11:27                           ` Joerg Schilling
2006-02-14 22:30                             ` Greg KH
2006-02-15  0:43                               ` Matthias Andree
2006-02-15  5:20                                 ` Greg KH
2006-02-16 12:01                                   ` Matthias Andree
2006-02-16 16:51                                     ` Randy.Dunlap
2006-02-16 18:03                                     ` Greg KH
2006-02-14 22:40                             ` Nix
2006-02-16 12:09                               ` Joerg Schilling
2006-02-16 12:36                                 ` Martin Mares
2006-02-17  0:38                                   ` Nix
     [not found]                                   ` <43F746B8.6080607@tmr.com>
2006-02-18 21:04                                     ` Martin Mares
2006-02-18 22:00                                       ` Ondrej Zary
2006-02-16 12:55                                 ` Marc Koschewski
2006-02-13 12:11                     ` Joerg Schilling
     [not found]                       ` <515e525f0602130446s1091f09ande10910f65a0f5f0@mail.gmail.com>
2006-02-13 15:12                         ` Joerg Schilling
2006-02-13 16:40                           ` Jan Engelhardt
2006-02-13 23:24                           ` D. Hazelton
2006-02-14 13:55                             ` Joerg Schilling
2006-02-14 21:59                               ` D. Hazelton
     [not found]                                 ` <43F74884.50904@tmr.com>
2006-02-18 20:00                                   ` Nix
2006-01-26 10:11                 ` Joerg Schilling
2006-01-25 19:04               ` Olivier Galibert
2006-01-26  9:38             ` Joerg Schilling
2006-01-26  9:45               ` Lee Revell
2006-01-26 13:58                 ` Joerg Schilling
2006-01-26 14:09                   ` Nick Piggin
2006-01-26 14:32                     ` Joerg Schilling
2006-01-26 15:16                       ` Nick Piggin
2006-01-26 16:04                       ` Matthias Andree
2006-01-26 15:38               ` grundig
2006-01-25 19:00           ` Tomasz Torcz
2006-01-26 10:25             ` Joerg Schilling
2006-01-26 10:56               ` Tomasz Torcz
2006-01-26 14:11                 ` Joerg Schilling
2006-01-25 22:01         ` jerome lacoste
2006-01-26 12:13           ` Joerg Schilling
2006-01-26 12:39             ` Martin Mares
2006-01-26 14:14               ` Joerg Schilling
2006-01-26 20:42         ` Jan Engelhardt
2006-01-27  8:00           ` Jens Axboe
2006-01-30 22:52             ` Bill Davidsen
2006-01-31  2:04               ` Kyle Moffett
2006-02-16 16:20                 ` Bill Davidsen
2006-02-16 17:45                   ` Olivier Galibert
2006-01-25 17:10       ` are added/removed - which

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=20060214104003.GA97714@dspnet.fr.eu.org \
    --to=galibert@pobox.com \
    --cc=ajwade@cpe001346162bf9-cm0011ae8cd564.cpe.net.cable.rogers.com \
    --cc=greg@kroah.com \
    --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

all inboxes | Powered by JetHome®