DDI_FM_EREPORT_POST(9F) | Kernel Functions for Drivers | DDI_FM_EREPORT_POST(9F) |
ddi_fm_ereport_post - post an FMA Protocol Error Report Event
#include <sys/ddifm.h> void ddi_fm_ereport_post(dev_info_t *dip, char *ereport_class,
uint64_t ena, int *sflag, ... /* name-value pair args */);
illumos DDI specific (illumos DDI)
dip
ereport_class
ena
sflag
The ddi_fm_ereport_post() function causes an encoded fault management error report name-value pair list to be queued for delivery to the Fault Manager daemon, fmd(8). The sflag parameter indicates whether or not the caller is willing to wait for system memory and event channel resources to become available.
The following ereport_class strings are available for use by any leaf device driver:
device.inval_state
device.no_response
device.badint_limit
device.intern_corr
device.intern_uncorr
device.stall
The ena indicates the Format 1 Error Numeric Association for this error report. It might have already been initialized by another error-detecting software module. For example, if ddi_fm_ereport_post() is called from an error handler callback function, the fme_ena field from the passed-in ddi_fm_error argument should be used. Otherwise it should be set to 0 and will be initialized by ddi_fm_ereport_post().
The name-value pair args variable argument list contains one or more (names, type, value pointer) nvpair tuples for non-array data_type_t types or one or more (name, type, number of elements, value pointer) tuples for data_type_t array types. There is one mandatory tuple to describe the ereport version. This should contain the following values:
Additional nvpair tuples can describe error conditions for logging purposes, but are not interpreted by the I/O framework or fault manager. The end of the argument list is specified by NULL.
The ddi_fm_ereport_post() function can be called from user, kernel, or high-level interrupt context.
See attributes(7) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Committed |
May 14, 2007 | OmniOS |