Data Structures for Drivers ddifmerror(9S)
NAME
ddifmerror - I/O error status structure
SYNOPSIS
#include
INTERFACE LEVEL
Solaris DI specific (Solaris DI)
DESCRIPTION
A ddifmerrort structure contains common data necessary
for I/O error handling. A pointer to a ddifmerrort struc-
ture is passed to error handling callbacks where it can then
be used in a call to pciereportpost(). The same structure
is also returned to callers of ddifmaccerrget() and
ddifmdmaerrget().
STRUCTURE MEMBERS
int fmeversion;
uint64t fmeena;
int fmestatus;
int fmeflag;
ddiacchandlet fmeacchandle;
ddidmahandlet fmedmahandle;
The fmeversion is the current version of ddifmerrort.
Valid values for the version are: DIFMEVER0 and
DIFMEVER1.
The fmeena is the FMA event protocol Format 1 Error Numeric
Association (ENA) for this error condition.
The fmeflag field is set to DIFMEREXPECTED if the
error is the result of a DIACAUTIOUS protected opera-
tion. In this case, fmeacchandle is valid and the driver
should check for and report only errors not associated with
the DIACAUTIOUS protected access operation. This field
can also be set to DIFMERPOKE or DIFMERPEK if the
error is the result of a ddipeek(9F) or ddipoke(9F) opera-
tion. The driver should handle these in a similar way to
DIFMEREXPECTED. Otherwise, ddiflag is set to
DIFMERUNEXPECTED and the driver must perform the full
range of error handling tasks.
The fmestatus indicates current status of an error handler
callback or resource handle:
SunOS 5.11 Last change: 13 May 2007 1
Data Structures for Drivers ddifmerror(9S)
DIFMOK No errors were detected.
DIFMFATAL An error which is considered fatal to the
operational state of the system was
detected.
DIFMNONFATAL An error which is not considered fatal to
the operational state of the system was
detected.
DIFMUNKNOWN An error was detected, but the driver was
unable to determine the impact of the
error on the operational state of the
system.
The fmeacchandle is the valid access handle associated
with the error that can be returned from pciereportpost()
The fmedmahandle is the valid DMA handle associated with
the error that can be returned from pciereportpost()
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
SEE ALSO
attributes(5), ddifmaccerrget(9F),
ddifmdmaerrget(9F), ddifmhandlerregister(9F),
ddipeek(9F), ddipoke(9F), pciereportpost(9F)
Writing Device Drivers
SunOS 5.11 Last change: 13 May 2007 2
|