output from mount(8) rather than df(1), because mount is more likely
to be available on install media. mount is invoked in a way that
always prints an error message, and the content of the error message
tells us whether fdesc is mounted. This should fix PR 40316 from
David Ross.
* Don't use negative variable names. Instead of nofdesc=false, use
fdesc_mounted=true.
* Add a comment explaining that MAKEDEV may be executed in an environment
that is missing some common commands.
MD MAKEDEV.conf. Not all ports have vcoda in their majors.foo files
and we shouldn't (re)assign major numbers on all ports before 5.0.
Should close PR port-sgimips/38962.
like "cmd: not found" are also redirected.
This should fix a problem reported by Chavdar Ivanov in which
the message "mtree: not found" appears during installation.
already-existing device nodes. This is done by invoking pax with its
current working directory set to an empty temporary directory.
* Add "-t mtree" command line option, to force MAKEDEV to use "mtree
-e -U" to create device nodes. Here are some timings from "MAKEDEV
${method} all" on an i386 system; each method was executed three
times, first in an empty directory, then twice in an already-populated
directory:
-m mknod
4.56 real 1.58 user 1.68 sys
2.96 real 1.37 user 1.48 sys
2.95 real 1.43 user 1.44 sys
-p pax
1.80 real 0.18 user 0.62 sys
2.35 real 0.25 user 0.80 sys
2.38 real 0.24 user 0.82 sys
-t mtree
1.62 real 0.22 user 0.44 sys
0.23 real 0.29 user 0.04 sys
0.24 real 0.28 user 0.05 sys
* If no command line options force a choice, then prefer mtree, pax, or
mknod, in that order of preference.
No objections in tech-userlevel to an earlier version of this change.
"retro" computers, but NetBSD also runs a growing number of rare
and retro add-on cards. With this patch, NetBSD supports the IDEC
Supervision/16, a black&white image capture board for the 16-bit
ISA bus. Approximate date of manufacture: 1991. Total instances
known to be in use throughout the world: one.
Coming soon; isvctl(8), the utility program for capturing 8-bit,
512x480 images at speeds of up to 6 frames per second.
This is so that md code that tries to call makedev altq or fd does not fail
when the file exists. This was reported in port-powerpc, when building /dev.
* Add a nooutput function to be used instead of redirecting to /dev/null,
because /dev/null might not exist early in the boot sequence. This
should fix a bug in which the pax autodetection failed when used from
init(8) with a read-only root file system without a /dev/null.
* Move most of the main program into a new makedev_main function,
to allow reuse by MAKEDEV.local.
In MAKEDEV.local:
* Use the new makedev_main function defined in MAKEDEV. This allows
MAKEDEV.local to support all the options understood by MAKEDEV, instead
of only a subset. This should fix a bug in which the setup() function
could try to use pax mode even though that was previously not supported.
In MAKEDEV.local man page:
* Update list of command line options.
* Don't explain all the options, just refer to MAKEDEV(8) man page.
* Remove BUGS section now that all MAKEDEV options are supported
by MAKEDEV.local.
Improve the documentation around that.
* The "-p pax", "-m mknod", and "-s" (mtree specfile) options should
always have been mutually exclusive. Now enforce that.
* The "-f" option didn't ever work with pax or mtree mode; document that,
and make it an error to try something that won't work.
* Make pax mode the default, if no other options prevent this, and if
"pax -w -M" appears to be usable.
* Add missing options to a usage message.
output from MAKEDEV.local.
Fixes PR 37498 from dlagner at rambler.ru, using an idea from David
Laight. The while loop in the old code is executed in a subshell, so it
can't make persistent modifications to the parent shell's variables.
instead of one by one using mknod. This is much faster (speed
increases of up to 20 times have been observed, but 3 to 5 times is
more common).
* One "-M" flag will create the mfs file system but not redirect output
to a temporary console; "-M -M" will also redirect output.
* Change the way we accumulate options to pass to MAKEDEV.local.
Since I managed to commit my alternate scheme for zeropad, delete
the commented out lines and replace the only other use.
I've not deleted the function itself though.
human procedures) breaking because they assume it's enough to copy
MAKEDEV fom one place to another.
Let MAKEDEV return after defining shell functions but before doing any
real work, if MAKEDEV_AS_LIBRARY is set.
Let MAKEDEV.local load MAKEDEV as a function library via
"MAKEDEV_AS_LIBRARY=1 . MAKEDEV".
filesystem and then populate it.
Determine the actual number of inodes that will be needed and add 10%.
Use "mount_mfs -o union" to save us having to copy MADEDEV (in case
anyone wishes to see it.
use by both MAKEDEV and MAKEDEV.local. This allows MAKEDEV.local
to accept the same command line arguments as MAKEDEV.
The installed MAKEDEV.subr is generated from MAKEDEV.subr.tmpl.
Replace the licence on MAKEDEV.local with a NetBSD licence, since I
rewrote the entire file.
Reviewed by christos and agc