Previous Next  

Element: ErrorIDAction

Document type

Module

Document XPath

/Module/HealthMonitor/PartitionHMTable/SystemState/ErrorIDAction

Schema XPath

/ConfigRecord/Module/HealthMonitor/PartitionHMTable/SystemState/ErrorIDAction

Description

The ErrorIDAction element is used to map a specific type of error to a custom error handler. It maps an error type identifier specified by the attribute to an error handler specified by the attribute. You should map each type of error that you expect to encounter either to your own error handler, or to one of the error handlers provided in the file hmDefaultHandlers.c. If an error occurs for which no handler is defined, the catch-all handler is used, which attempts a partition warm restart. If partition warm restart fails, it performs a partition cold restart.

<HealthMonitor>
 <PartitionHMTable Name="PartitionHM1"
  PartitionCallback="">
  <SystemState>
   <ErrorIDAction
    ErrorIdentifier="HME_UNKNOWN"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HME_POWER_FAIL"
    ErrorAction="hmDbg_DH_HME_POWER_FAIL"/>
   <ErrorIDAction
    ErrorIdentifier="HME_KERNEL"
    ErrorAction="hmDbg_DH_HME_KERNEL"/>
   <ErrorIDAction
    ErrorIdentifier="HME_CONFIG_ERROR"
    ErrorAction="hmDbg_DH_EventLog"/>
   <ErrorIDAction
    ErrorIdentifier="HME_INIT_ERROR"
    ErrorAction="hmDbg_DH_HME_INIT_ERROR"/>
   <ErrorIDAction
    ErrorIdentifier="HME_PARTITION_OVERFLOW"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HME_PARTITION_MODE_SET"
    ErrorAction="hmDbg_DH_HME_PARTITION_MODE_SET"/>
   <ErrorIDAction
    ErrorIdentifier="HME_APEX_INTERNAL_ERROR"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HME_HM_INTERNAL_ERROR"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HME_PORT_INTERNAL_ERROR"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HME_LOST_TICKS"
    ErrorAction="hmDbg_DH_HME_LOST_TICKS"/>
   <ErrorIDAction
    ErrorIdentifier="HME_HM_ERROR"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HME_HMQ_OVERFLOW"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HME_DATA_LOSS"
     ErrorAction="hmDbg_DH_EventLog"/>
   <ErrorIDAction
    ErrorIdentifier="HME_HM_DEADLINE_MISSED"
    ErrorAction="hmDbgDefaultHandler"/>
   <ErrorIDAction
    ErrorIdentifier="HM_MSG"
    ErrorAction="hmDbg_DH_EventLog"/>
   <ErrorIDAction
    ErrorIdentifier="HME_DEFAULT"
    ErrorAction="hmDbgDefaultHandler"/>
	</SystemState>
 </PartitionHMTable>
</HealthMonitor>
			
Use

Required, unbounded

Children

None

Attributes

ErrorAction

ErrorIdentifier

Restrictions

None

Attribute: ErrorAction

Document XPath
/Module/HealthMonitor/PartitionHMTable/SystemState/ErrorIDAction/@ErrorAction
Schema XPath
/ConfigRecord/Module/HealthMonitor/PartitionHMTable/SystemState/ErrorIDAction/@ErrorAction
Description

The name of the error handler routine that is to be called when an error of the type specified by the attribute of the current element occurs.

You declare an array of mappings from handler names to functions in the health monitor configlette, installDir/vxworks653-2.2/target/config/comps/src/usrHm.c. The default error handler routines are also found in the configlette.

Use

Required

Target location

ConfigRecord

XML data type

xs:string

Destination data type

String

Behavior if not specified

N/A

Values with special meanings

None

Restrictions

Attribute: ErrorIdentifier

Document XPath
/Module/HealthMonitor/PartitionHMTable/SystemState/ErrorIDAction/@ErrorIdentifier
Schema XPath
/ConfigRecord/Module/HealthMonitor/PartitionHMTable/SystemState/ErrorIDAction/@ErrorIdentifier
Description

The type of the error to be handled by the error handler specified in the attribute of the current element.

Use

Required

Target location

ConfigRecord

XML data type

xs:string

Destination data type

Unsigned 32 bit integer

Behavior if not specified

N/A

Values with special meanings

HME_APEX_INTERNAL_ERROR: A catch-all error code for errors in the APEX API.

HME_APPLICATION_ERROR: Equivalent to the ARINC 653 APPLICATION_ERROR error code.

HME_CONFIG_ERROR: A configuration error in the health monitor system.

HME_DATA_LOSS: The reformatting of an event has resulted in loss of data.

HME_DEADLINE_MISSED: Equivalent to the ARINC 653 DEADLINE_MISSED error code.

HME_DEFAULT: A catch all for any event not specifically mapped in the table.

HME_HARDWARE_FAULT: Equivalent to the ARINC 653 HARDWARE_FAULT error code.

HME_HMQ_OVERFLOW: An event has been injected that resulted in a health monitor queue containing more events than specified in its threshold value. (This event is placed on the queue and is therefore received only when the queue is processed. If additional events were injected before the queue was cleared, they would have been reformatted as HME_HM_ERROR events and dispatched to the module level.)

HME_HM_DEADLINE_MISSED: The watchdog timer (specified by /CoreOSDescription/KernelConfiguration/@watchDogTimerDuration) for a task-locked task has expired while the health monitor was waiting to handle an event injected at interrupt level.

HME_HM_ERROR: An error has occurred during health monitor event processing.

HME_HM_INTERNAL_ERROR: A catch-all error code for errors in the health monitor system.

HME_ILLEGAL_REQUEST: Equivalent to the ARINC 653 ILLEGAL_REQUEST error code.

HME_INIT_ERROR: Equivalent to the VxWorks 653 VX_ERROR_INIT_ERROR error code as defined in vxworks.h.

HME_KERNEL: Equivalent to the VxWorks 653 VX_ERROR_KERNEL error code.

HME_LOST_TICKS: Equivalent to the VxWorks 653 VX_ERROR_LOST_TICKS error code as defined in vxworks.h.

HME_MEMORY_VIOLATION: Equivalent to the ARINC 653 MEMORY_VIOLATION error code.

HME_NUMERIC_ERROR: Equivalent to the ARINC 653 NUMERIC_ERROR error code.

HME_OTHER: Miscellaneous errors.

HME_PARTITION_MODE_SET: Equivalent to the VxWorks 653 VX_ERROR_PARTITION_MODE_SET error code as defined in vxworks.h.

HME_PARTITION_OVERFLOW: Equivalent to the VxWorks 653 VX_ERROR_PARTITION_OVERFLOW error code as defined in vxworks.h.

HME_PORT_INTERNAL_ERROR: A catch-all error code for errors in the APEX ports subsystem.

HME_POWER_FAIL: Equivalent to the ARINC 653 POWER_FAIL error code.

HME_STACK_OVERFLOW: Equivalent to the ARINC 653 STACK_OVERFLOW error code.

HME_UNKNOWN: Obsolete code retained for backward compatibility.

HM_MSG: A message.

Restrictions



Generated on 2007-10-15 17:17:22.