EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Race condition during IOC startup?
From: Andrew Johnson <[email protected]>
To: [email protected]
Date: Fri, 22 Feb 2013 16:23:58 -0600
Hi,

On 2013-02-22 Zhang, Dehong wrote:
> I seem to have such a problem: when my IOC starts up, some of my records
> want to callback almost immediately.  Then my IOC crashes, because the
>  "onceQ" related stuff are not created yet -- is this possible?

What device support are they using?  The only way I could see this happening 
is if those records are I/O Interrupt scanned and their device support is 
calling scanIoRequest() before the global variable interruptAccept gets set to 
true.  If they try that, the scan request will be ignored (the associated 
records will not be processed) which I guess might cause a crash.

> Is it safe to move the "scanInit" call in iocBuild to just before
>  "initDrvSup" (EPICS base 3.14.12, src/misc/iocInit.c)?

No, you'll have to change your device support so it doesn't trigger until the 
IOC is ready.  One way to do that is to add an enable/disable which is 
controlled by a bo record, and after iocInit your startup script would do a 
dbpf to enable the device.

HTH,

- Andrew
-- 
There is no such thing as a free lunch.  When invited for lunch,
it is best to check if you are there to eat, or to be eaten.
-- Clive Robinson

References:
Race condition during IOC startup? Zhang, Dehong

Navigate by Date:
Prev: Re: Race condition during IOC startup? Michael Davidsaver
Next: Re: EPICS Modbus module + PLC Pavel Maslov
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Race condition during IOC startup? Michael Davidsaver
Next: Problem when loading epics3.14.12.1 application to vxWorks5.5/MPC8572 王林
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·