ioinit(1M) — Series 800 Only
NAME
ioinit − initialize I/O system
SYNOPSIS
/etc/ioinit [−f] [−c] [−i]
DESCRIPTION
ioinit initializes kernel I/O system data structures using information from file /etc/ioconfig.
If the −f option is given, any existing logical unit information in the kernel is erased before being updated from the /etc/ioconfig file. Without −f, any existing logical unit information in the kernel causes ioinit to exit with an error. The −c option causes ioinit to copy the kernel I/O system data structures into /etc/ioconfig instead of initializing the kernel structures from the file. If /etc/ioconfig already exists, ioinit exits with an error unless −f is also specified, in which case the existing /etc/ioconfig file is overwritten.
If the −i option is given, after successfully initializing the kernel data structures (or copying the structures to /etc/ioconfig), ioinit runs insf(1M) in order to assign logical unit numbers and create special files for all the new devices on the system. Any error encountered before invoking insf inhibits the attempt to run it.
Options
ioinit recognizes the following options:
−c Update /etc/ioconfig from the kernel instead of the kernel from /etc/ioconfig.
−f When used without −c, force the information from /etc/ioconfig to overwrite any logical unit information already in the kernel. When used with −c, force the kernel information to overwrite an existing /etc/ioconfig file.
−i Invoke insf after updating the kernel data structures or /etc/ioconfig.
RETURN VALUE
An exit code of 0 is returned if no errors occurred; 1 is returned if insf failed; 2 is returned if ioinit encountered an error before invoking insf.
Warnings result in an exit code of 0, since these are not considered catastrophic.
DIAGNOSTICS
Most of the diagnostic messages from ioinit are self-explanatory. Listed below are some messages deserving further clarification. Errors cause ioinit to halt immediately while warnings allow the program to continue.
If the −i option is used, ioinit invokes insf which may also generate diagnostic messages. Refer to insf(1M) for details.
Errors
/etc/ioconfig does not exist
Either the /etc/ioconfig file needs to be restored from backup, or the file must be recreated with ioinit −cf. If the file is recreated from a kernel without logical unit information in it, that information is lost. In such cases, insf(1M) must be run to generate new logical unit numbers, and the new numbers may differ from the original numbers.
Logical unit information is already in the kernel
Existing logical unit information in the kernel is not overwritten unless the −f option is specified.
Cannot overwrite existing /etc/ioconfig file
An existing /etc/ioconfig file cannot be overwritten unless the −f option is specified.
Invalid magic number
The magic number stored in the /etc/ioconfig file is incorrect. Either a correct file must restored from backup, or the file must be recreated with ioinit −cf. If the file is recreated from a kernel without logical unit information in it, that information is lost. In such cases, insf(1M) must be run to generate new logical unit numbers, and the new numbers may differ from the original numbers.
Device driver name has conflicting class name in /etc/ioconfig
The device class for the given driver as specified in /etc/ioconfig does not match the class specified in the kernel by uxgen(1M).
Exec of insf failed
The −i option was specified but the attempt to run insf(1M) failed for some reason.
Warnings
Device driver name is not in the kernel − device at path unusable
Device class name is not in the kernel − device at path unusable
Device manager name is not in the kernel − device at path unusable
The indicated device driver, device class, or device manager is not present in the kernel and therefore the device at the indicated hardware path is not usable. An open(2) of a special file pointing to an unusable device fails. To make the device usable again, the appropriate device driver, device class, and/or device manager must be added to the uxgen(1M) input file and a new kernel generated. If the device is no longer needed, rmsf(1M) should be used to remove the special files and update /etc/ioconfig.
Device driver name is improperly connected − device at path unusable
The driver connectivity information specified in /etc/ioconfig is different than the connectivity specified in the kernel by uxgen(1M) and therefore the device at the indicated hardware path is not usable.
EXAMPLES
For normal system operation, kernel data structures are initialized and special files are made at every boot by the following entry in the /etc/inittab file:
io::sysinit:/etc/ioinit −i >/dev/console 2>&1
AUTHOR
ioinit was developed by HP.
FILES
/etc/ioconfig
SEE ALSO
init(1M), insf(1M), rmsf(1M), uxgen(1M), ioconfig(4).
Hewlett-Packard Company — HP-UX Release 8.05: June 1991