next up previous
Next: I/O and memory base Up: The library Previous: Miscalleanous

System error detection (i.e. VMEbus error)

The irq notification is enabled by default, so error detection is always possible.

   ArwvmeSysErrInfo *ArwvmeGetSysErrInfo(int fd);
returns a structure containing the information about the last (!) VMEbus error generated by this pid. The structure contains the module_number, the vme_addr, the time (jiffies) and the reason, at which the handler was called. The returned pointer is private and must not be freed! In the cases of PCIADA_TO, ACFAIL and SYSFAIL the handler will aggressively kick the users (via SIGBUS). If a process catches the signal, it will inspect the reason and decides what to do next.
   int ArwvmeCheckSysError(int fd);
returns TRUE, if a bus error occured since the last request. Both functions reset the sys err info, so a ArwvmeCheckSysError(fd); ArwvmeGetSysErrInfo(fd); will reveal no error for the second call.


next up previous
Next: I/O and memory base Up: The library Previous: Miscalleanous


Fri Jul 2 08:09:45 MEST 1999