I talked to Jeff awhile ago and we agree that there is a big problem
with epicsAtExit.
I added an epicsAtExit handler to dbCa that stops the dbCaTask after
calling ca_context_destroy.
When this happened on linux using real time priorities an assert failure
occured when a db_post_event occured
for a record the was the target of a CP link.
After talking to Jeff I think I agree that we can do one of two things
1) Dont do any cleanup, i.e. just do what we did on 3.13 on vxWorks with
the exception of rebootHookAdd
2) Completely clean up the IOC database, i.e. make all device support
terminate or at the very least all soft support
and make the record stop
If we try for half way measures there will probably always be problems.
I commented out the code in epicsExitCallAtExits and tried exampleApp on
linux (with priorities) and
on solaris. I had the example sequence program runing. I terminated both
via exit and Ctl/C. The exampleApp always terminated properly.
So why did we invent epicsAtExit?
Does anyone remember?
Marty
- Replies:
- Re: epicsAtExit Andrew Johnson
- References:
- RE: dbEvent.c line 665 Jeff Hill
- Navigate by Date:
- Prev:
Re: R3.14.8 Status/logClient patch Benjamin Franksen
- Next:
RE: R3.14.8 Status/logClient patch Jeff Hill
- 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: dbEvent.c line 665 Jeff Hill
- Next:
Re: epicsAtExit Andrew Johnson
- Index:
2002
2003
2004
<2005>
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|