this uses a different name for the parallel ports than the openbsd
port otherwise they conflict with the magma parallel ports and you
would be unable to have both a spif and magma installed at the
same time.
gaps in the sequence of minor numbers as we allocate ptys. Having gaps
has 2 bad side effects:
- ptm does not like it
- we allocate a lot of storage that we'll never use in the pty array
(the current scheme allocated 62 ptys 0-15,256-301, so we needed
302 entries to get 64).
Now we allocate ptys in groups of 16 or 14 instead of 64, and we follow
the minor number order.
We default to 64 pty's by building pty0-3, which is all using the old
traditional pty names. Of course to do this, the shell code is a bit
convoluted.
* Use "mknod -F netbsd -r" to create nodes, instead of
"rm ; mknod; chmod; chown".
This means permissions & ownership of existing nodes will
not be changed.
This is up to 30% faster when populating an empty /dev,
and nearly 2x faster when re-running on an existing /dev.
* New options:
-f force change of permission & ownership of existing
devices
-m mknod override name/path of mknod program
(which defaults to $TOOL_MKNOD, then "mknod").
-s generate mtree(8) specfile instead of creating devices
* Remove /usr/etc from $PATH; not needed anymore.
* Provide functions to create devices & directories:
mkdev name [b|c] major minor [mode{=600} [gid{=0} [uid{=0}]]]
create device node `name' with the appropriate permissions
lndev src target
create a symlink from src to target
makedir dir mode
create directory with appropriate mode
* UIDs and GIDs are hardcoded in at MAKEDEV generation time.
(Unfortunately there's not a simple way of determining a GID
a la "id -n user" for determining a UID).
This was tested by generating MAKEDEV for each MACHINE,MACHINE_ARCH
combination and comparing the results of "MAKEDEV all" from the
previous version to the new one.
(This testing actually highlighted mistakes in the previous configuration!)
Simplify distrib/common/Makefile.makedev to use "MAKEDEV -s"
Uses a hook in spec_strategy() to save data written from a mounted
file system to its block device and a hook in dounmount().
Not enabled by default in any kernel config.
Approved by: Frank van der Linden <fvdl@netbsd.org>
add some more necessary device entries
introduce makedisk_minimal() and use it to create the CD-ROM & md entries;
this procedure only creates 'a' and RAW_PART device entries
remove pf from 'all' target - it's not part of tree, so shouldn't be
created by default
for tty0[0-9]
as pointed out by David Laight
remove spaces between makedisk_p*() functions, so the output script looks
neater once some of them are filtered out