EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024  Index 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: IOC Threads blocking all signals
From: William Norum via Core-talk <[email protected]>
To: Michael Davidsaver <[email protected]>
Cc: EPICS Core Talk <[email protected]>
Date: Wed, 19 Jun 2019 12:12:20 -0400
IIRC, it was felt that
  • it would be too complicated and error prone to fully handle SIGINT in the IOC shell and all the routines that it called.
  • IOCs should be insulated against an erroneous SIGINT or SIGQUIT from the IOC shell session and from other signals from outside the process.
Perhaps default signal handling should be restored in child processes? 
But, as Michael points out, you can always SIGKILL a recalcitrant child process if needed.

On Jun 19, 2019, at 12:00 PM, Michael Davidsaver via Core-talk <[email protected]> wrote:

On 6/19/19 8:29 AM, Ralph Lange via Core-talk wrote:
Question:
It seems (looking at start_routine() in libCom/osi/osd/posix/osdThread.c) that all threads that the IOC starts are blocking all signals.
Is that correct, or am I missing something?
If that's correct, why is it done?

We have a case where a separate process started from an EPICS IOC subordinate (driver) thread - via fork() and execv() calls - seems to be "immune" against all attempts to kill it (except -9 obviously).

Any ideas?

SIGKILL can't be blocked.  Maybe a "zombie" process
which it's parent isn't wait()ing for it?

https://en.wikipedia.org/wiki/Zombie_process



References:
IOC Threads blocking all signals Ralph Lange via Core-talk
Re: IOC Threads blocking all signals Michael Davidsaver via Core-talk

Navigate by Date:
Prev: Re: [Merge] ~epics-core/epics-base/+git/Com:thread-join into epics-base:7.0 Andrew Johnson via Core-talk
Next: Re: [Merge] ~epics-core/epics-base/+git/Com:thread-join into epics-base:7.0 mdavidsaver via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: IOC Threads blocking all signals Michael Davidsaver via Core-talk
Next: Re: IOC Threads blocking all signals Johnson, Andrew N. via Core-talk
Index: 2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  <20192020  2021  2022  2023  2024 
ANJ, 19 Jun 2019 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·