Let me try to give an executive summary of epicsExit issues for 3.14
epicsExit is required and solves at least the following problems:
1) in vxWorks
a) Is an OSI replacement for rebootHookAdd
b) With patches to the board support package, the epicsAtExit
handlers can
be called BEFORE any rebootHook handlers. This will allow RSRV
servers to
terminate their connections.
2) On all systems it allows iocLog to terminate cleanly
3) On Windows and labViews????
4) It should be safe on all systems for RSRV to terminate it's connections.
It is not safe to have dbCaTask terminate and call ca_context_destroy.
Similarly just having arbitrary parts of iocCore cleaning up can cause
crashes.
I am changing dbCa.c as follows:
diff -r1.67.2.5 dbCa.c
946c946,954
< ca_context_destroy();
---
> /* This is not sufficient to clean up dbCa connections.
> * The following should be done:
> * 1) All device support that uses dbCa should clean up
> * This means that all channels should be deleted
> * dbCa should check that this has been done
> * 2) dbCa should do the following:
> * a) check that all channels have been deleted.
> * b) call ca_context_destroy();
> */
Any comments?
Marty
- References:
- RE: dbEvent.c line 665 Jeff Hill
- epicsAtExit Marty Kraimer
- Re: epicsAtExit Andrew Johnson
- Re: epicsAtExit Kay-Uwe Kasemir
- Navigate by Date:
- Prev:
Re: R3.14.8 Status/logClient patch Marty Kraimer
- Next:
Re: R3.14.8 Status/logClient patch Benjamin Franksen
- Index:
2002
2003
2004
<2005>
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: epicsAtExit Kay-Uwe Kasemir
- Next:
Re: dbEvent.c line 665 Marty Kraimer
- Index:
2002
2003
2004
<2005>
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|