Errors – Compex Systems Advanced SerialRAID Adapters SA33-3285-02 User Manual

Page 322

Advertising
background image

The POLLIN event is indicated by the device driver when any data is received for this
target instance. A nonblocking read subroutine, if subsequently issued by the caller,
returns data. For a blocking read subroutine, the read does not return until either the
requested length is received, or the write operation ends, whichever comes first.

Asynchronous notification of the POLLIN event occurs when received data is available.
This notification occurs only if the select event POLLSYNC was not set.

The initiator-mode device driver provides support for the following select events:

POLLOUT

Check whether output is possible.

POLLPRI

Check whether an error occurred with the write operation.

POLLSYNC

Return only events that are currently pending. No asynchronous notification
occurs.

An additional event POLLIN is not applicable and has no support from the
initiator-mode device driver.

The reventp output parameter points to the result of the conditional checks. The device
driver can return a bitwise OR of the following flags:

POLLOUT

If the initiator device is opened with the O_NDELAY flag, some buffer space is
not being used now. Otherwise, this event is always set for the initiator-mode
device.

POLLPRI

An error occurred with the latest write operation.

Asynchronous notification of the POLLOUT event occurs when buffer space is made
available for further write operations.

Asynchronous notification of the POLLPRI event occurs if an error occurs with a write
operation. Note that the error might be recovered successfully by the device driver.

Possible return values for the errno global variable include:

EINVAL

A specified event has no support, or the device instance is not configured or
not open.

Errors

Errors that are detected by the target-mode device driver can be one of the following:

v

A hardware error that occurred while receiving data, and cannot be reproduced

v

A hardware error that occurred during an adapter command, and cannot be
reproduced

302

User’s Guide and Maintenance Information

Advertising