1ddi_fm_error(9S)          Data Structures for Drivers         ddi_fm_error(9S)
2
3
4

NAME

6       ddi_fm_error - I/O error status structure
7

SYNOPSIS

9       #include <sys/ddifm.h>
10
11

INTERFACE LEVEL

13       Solaris DDI specific (Solaris DDI)
14

DESCRIPTION

16       A ddi_fm_error_t structure contains common data necessary for I/O error
17       handling. A pointer to a ddi_fm_error_t structure is  passed  to  error
18       handling  callbacks  where  it  can  then be used in a call to pci_ere‐
19       port_post().  The  same  structure  is  also  returned  to  callers  of
20       ddi_fm_acc_err_get() and ddi_fm_dma_err_get().
21

STRUCTURE MEMBERS

23         int                 fme_version;
24         uint64_t            fme_ena;
25         int                 fme_status;
26         int                 fme_flag;
27         ddi_acc_handle_t    fme_acc_handle;
28         ddi_dma_handle_t    fme_dma_handle;
29
30
31
32       The  fme_version is the current version of ddi_fm_error_t. Valid values
33       for the version are: DDI_FME_VER0 and DDI_FME_VER1.
34
35
36       The fme_ena is the FMA event protocol Format 1 Error  Numeric  Associa‐
37       tion (ENA) for this error condition.
38
39
40       The  fme_flag  field  is set to DDI_FM_ERR_EXPECTED if the error is the
41       result  of  a  DDI_ACC_CAUTIOUS  protected  operation.  In  this  case,
42       fme_acc_handle is valid and the driver should check for and report only
43       errors not associated with the DDI_ACC_CAUTIOUS protected access opera‐
44       tion.  This field can also be set to DDI_FM_ERR_POKE or DDI_FM_ERR_PEEK
45       if the error is the result of a ddi_peek(9F) or ddi_poke(9F) operation.
46       The driver should handle these in a similar way to DDI_FM_ERR_EXPECTED.
47       Otherwise, ddi_flag is set to DDI_FM_ERR_UNEXPECTED and the driver must
48       perform the full range of error handling tasks.
49
50
51       The fme_status indicates current status of an error handler callback or
52       resource handle:
53
54       DDI_FM_OK          No errors were detected.
55
56
57       DDI_FM_FATAL       An error which is considered  fatal  to  the  opera‐
58                          tional state of the system was detected.
59
60
61       DDI_FM_NONFATAL    An error which is not considered fatal to the opera‐
62                          tional state of the system was detected.
63
64
65       DDI_FM_UNKNOWN     An error was detected, but the driver was unable  to
66                          determine the impact of the error on the operational
67                          state of the system.
68
69
70
71       The fme_acc_handle is the valid access handle associated with the error
72       that can be returned from pci_ereport_post()
73
74
75       The  fme_dma_handle  is  the valid DMA handle associated with the error
76       that can be returned from pci_ereport_post()
77

ATTRIBUTES

79       See attributes(5) for descriptions of the following attributes:
80
81
82
83
84       ┌─────────────────────────────┬─────────────────────────────┐
85       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
86       ├─────────────────────────────┼─────────────────────────────┤
87       │Interface Stability          │Committed                    │
88       └─────────────────────────────┴─────────────────────────────┘
89

SEE ALSO

91       attributes(5),     ddi_fm_acc_err_get(9F),      ddi_fm_dma_err_get(9F),
92       ddi_fm_handler_register(9F),   ddi_peek(9F),   ddi_poke(9F),   pci_ere‐
93       port_post(9F)
94
95
96       Writing Device Drivers
97
98
99
100SunOS 5.11                        13 May 2007                 ddi_fm_error(9S)
Impressum