devfs support for 5.0

Hi,
I'm wanting to get devfs support into NetBSD 5.0 which is planning on
being branched around 25th May. I originally thought that I could get
this done by myself, but now I'm having second thoughts. So this mail is
a call for help from you folks.
Attached is a list of tasks that are outstanding with the devfs work. If
anyone feels that they can help out with any of them please feel free to
get in touch and we can organise our efforts. This file has also just
been committed to src/doc on the mjf-devfs2 branch.
If you don't want to help out with development then just general testing
will help me to track down bugs and would be much appreciated! To
install a devfs-enabled system you need these things from the mjf-devfs2
cvs branch:
- A kernel for your arch (devfs is enabled by default)
- sbin/devfsd
- sbin/init
- sbin/mount_devfs
- etc/devfsd.conf
- etc/rc.d/devfsd
- etc/defaults/rc.conf
the mjf-devfs2 branch currently has the modules src/doc, src/share,
src/sbin, src/sys, src/etc so you need to get the other modules from
HEAD. If there is a demand for them I could upload iso for the various
arches.
I'm going to go over all the man pages later today and upload some
example devfsd.conf files to help people understand the features of
devfs and hopefully encourage people to test it out.
Thanks,
--mjf

# $NetBSD: TODO.devfs,v 1.1 2008/05/01 11:16:13 mjf Exp $
High Priority:
- finish converting drivers
- chmod/chgrp/mv need to signal the changes to devfsd(8)
- flesh out "matching" framework
- is devfs_mount MPSAFE?
- devfs_kernel_mount should be moved to a common routine that can
be used by devfs and the kernel mount code,
- vfs_syscalls.c:mount_domount()
- switch to dynamic majors
Medium Priority:
- make devfs completely not support regular files
- tmpfs string pools are not needed in devfs fs code, just use
kmem_alloc()
- statvfs does free space management, it should be removed and
be made to lie and say N inodes and blocks are always free.
- upgrade path
* Mounting devfs -o union and reading in device files
- mkdir /dev/pts in the devfs fs code
- some devices need /dev/audio0 ln -s audio0 audio, how do we cater
for them? it probably shouldn't be in the device driver as it's
surely all about policy and should be in devfsd(8)
Low Priority:
- think about using more optimized data structures for device_name.
- in some places memory is allocatd whilst holding a lock.
allocation can take quite a while if system is low on
memory (ad@)