Provides the means for receiving data from the Serial Optical Link (SOL) device handler.
#include <sys/device.h> #include <sys/comio.h> #include <sys/soluser.h>
int sol_read (devno, uiop, chan, arg) dev_t devno; struct uio *uiop; int chan; struct read_extension *arg;
devno | Specifies the major and minor device numbers. |
uiop | Points to a uio structure. For a calling user-mode process, the uio structure specifies the location and length of the caller's data area in which to transfer information. The kernel fills in the uio structure for the user. |
chan | Specifies the channel number assigned by the sol_mpx entry point. |
arg | Has a value of null or else points to a read_extension structure. This structure is defined in the /usr/include/sys/comio.h file. |
Note: Only user-mode callers should use the sol_read entry point.
The sol_read entry point provides the means for receiving data from the SOL device handler. When a user-mode caller issues a read, readx, readv, or readvx subroutine, the kernel calls the sol_read entry point. Any data available for the specified channel is returned.
For this operation, the arg parameter may point to the read_extension structure. This structure is defined in the /usr/include/sys/comio.h file and contains the following fields:
The data received does contain the 4-byte field for the processor ID. Therefore, the first byte of data will be the netid field.
The sol_read entry point can be called from the process environment only.
EACCES | Indicates an illegal call from a kernel-mode user. |
ENODEV | Indicates an invalid minor number was specified. |
EINTR | Indicates a system call was interrupted. |
EMSGSIZE | Indicates the data was too large to fit into the receive buffer and that no arg parameter was supplied to provide an alternate means of reporting this error with a status of CIO_BUF_OVFLW. |
EFAULT | Indicates an invalid address was supplied. |
ENOCONNECT | Indicates the device has not been started. |
The sol_read entry point functions with a Serial Link Adapter and Serial Optical Channel Converter that have been correctly configured for use on a qualified network. Consult hardware specifications for more information on configuring hardware and network qualifications.
Serial Optical Link Device Handler Entry Points.
The uio structure in AIX Version 4.3 Technical Reference: Kernel and Subsystems Volume 1.
The sol_mpx entry point.
The read, readx, readv, or readvx subroutine.