MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Kernel Functions for Drivers              ddifmereportpost(9F)



NAME
     ddifmereportpost - post  an  FMA  Protocol  Error  Report
     Event

SYNOPSIS
     #include 

     void ddifmereportpost(devinfot *dip, char *ereportclass,
          uint64t ena, int *sflag, ... /* name-value pair args */);


INTERFACE LEVEL
     Solaris DI specific (Solaris DI)

PARAMETERS
     dip              Pointer to the devinfo structure


     ereportclass    FMA Event Protocol error class


     ena              Error Numeric Association


     sflag            Determines whether  caller  can  sleep  for
                      memory or other event resources.


DESCRIPTION
     The ddifmereportpost() function causes an  encoded  fault
     management  error  report  name-value pair list to be queued
     for delivery to the Fault Manager daemon, fmd(1M). 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 ereportclass strings are available for use by
     any leaf device driver:

     device.invalstate      A leaf  driver  discovers  that  the
                             device  is  in  an invalid or incon-
                             sistent  state.  For  example,   the
                             driver  might detect that receive or
                             send  ring  descriptor  indices  are
                             corrupted.  It  might  also  find an
                             invalid value in  a  register  or  a
                             driver-to-device protocol violation.


     device.noresponse      A leaf driver times out waiting  for
                             a  response  from  the  device.  For



SunOS 5.11          Last change: 14 May 2007                    1






Kernel Functions for Drivers              ddifmereportpost(9F)



                             example, timeouts can occur when  no
                             confirmation  is  seen  after reset-
                             ting, enabling, or disabling part of
                             the device.


     device.badintlimit     A leaf device sends  too  many  con-
                             secutive  interrupts with no work to
                             do.


     device.interncorr      A leaf device reports to the  driver
                             that   it  has  itself  detected  an
                             internal correctable error.


     device.internuncorr    A leaf device reports to the  driver
                             that   it  has  itself  detected  an
                             internal uncorrectable error.


     device.stall            A leaf driver determines  that  data
                             transmission  has  stalled  indefin-
                             itely.



     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
     ddifmereportpost()  is called from an error handler call-
     back  function,  the  fmeena  field  from   the   passed-in
     ddifmerror argument should be used. Otherwise it should be
     set to 0 and will be initialized by ddifmereportpost().


     The name-value pair args variable argument list contains one
     or  more (names, type, value pointer) nvpair tuples for non-
     array datatypet types or one or more (name,  type,  number
     of  elements,  value  pointer)  tuples for datatypet array
     types. There is one mandatory tuple to describe the  ereport
     version. This should contain the following values:

         o    name - FMVERSION

         o    type - DATATYPEUINT8

         o    value - FMEREPORTVERS0


     Additional nvpair tuples can describe error  conditions  for
     logging  purposes,  but  are  not  interpreted  by  the  I/O



SunOS 5.11          Last change: 14 May 2007                    2






Kernel Functions for Drivers              ddifmereportpost(9F)



     framework or fault manager. The end of the argument list  is
     specified by NUL.

CONTEXT
     The ddifmereportpost() function can be called from  user,
     kernel, or high-level interrupt context.

ATRIBUTES
     See attributes(5) for descriptions of the  following  attri-
     butes:



     
           ATRIBUTE TYPE               ATRIBUTE VALUE       
    
     Interface Stability          Committed                   
    


SEE ALSO
     fmd(1M), attributes(5), ddifmserviceimpact(9F)

































SunOS 5.11          Last change: 14 May 2007                    3



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™