Re: PROPOSAL: /proc/dev

Richard Gooch (rgooch@atnf.CSIRO.AU)
Tue, 6 Jan 1998 00:32:33 +1100


Andrea Arcangeli writes:
> On Sat, 3 Jan 1998, Richard Gooch wrote:
>
> >The reason my scheme doesn't depend on kerneld is that if a driver is
> >built-in/loaded by a boot script, the /dev entries for that driver are
> >registered in the startup code. So, on a system like mine where all
> >drivers are either built-in or automatically installed by a boot
> >script, /dev would be fully populated. An attempt to open(2) an entry
> >in /dev which did not exist would cause devfs to return -ENODEV
> >because kerneld isn't running.
>
> - You could implement that more easily without use kerneld.

I don't see the point you're making here.

> - I think this is totally wrong for programs or people that check in /dev
> for a device before try to open it, or at least is a mess.

Well, that's one reason for it to remain a config option. The plan is
to make it transparent to driver writers, so the sysadmin can choose
either scheme,

> - If you want to make something useful, your devfs must be populated from
> _all_ kernel devices at boot with 600 permission and it must not remove
> device entry for some reason. It can add/remove devices from the
> filesystem only when you load/unload a kernel module.

I never suggested that devfs would remove entries once created. In
fact, there are reasons why you'd leave devices created by unloaded
modules floating around (although with major&minor set to -1 to
indicate the state change).

> - Since devfs should be a virtual device that forget permission and
> ownership at reboot (or after module unload) it will make the life hard
> and less efficient in the rcS.d scripts. I' d like to chown directly
> /dev/devname on ext2, instead of change a bootup script or adding the
> line "option modname chmod 644 /dev/modname; chown ..." in /etc/conf.modules.
> I don' t like something of only virtual.

If you read my current proposal, you'll note that my scheme will allow
the sysadmin to chmod()/chown() entries in /dev and they will be
persistent.

Regards,

Richard....