> To reproduce this, create an EPICS IOC with the following code:
>
> int main()
> {
> printf("Running iocsh\n");
> iocsh("/dev/null");
> printf("Calling epicsThreadExitMain\n");
> epicsThreadExitMain();
> }
For what it's worth, here are the last few lines from running
strace bin/linux-x86/softIoc
on the offending process:
...
write(1, "Running iocsh\n", 14Running iocsh
) = 14
open("/dev/null", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 3), ...}) = 0
ioctl(3, SNDCTL_TMR_TIMEBASE or TCGETS, 0xbfe9c790) = -1 ENOTTY (Inappropriate ioctl for device)
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f60000
read(3, "", 4096) = 0
close(3) = 0
munmap(0xb7f60000, 4096) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
mmap2(NULL, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f1f000
mprotect(0xb7f1f000, 4096, PROT_NONE) = 0
clone(child_stack=0xb7f3f4c4, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED, parent_tidptr=0xb7f3fbe8, {entry_number:6, base_addr:0xb7f3fba0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb7f3fbe8) = 5730
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
write(1, "Calling epicsThreadExitMain\n", 28Calling epicsThreadExitMain
) = 28
futex(0x7f81a0, FUTEX_WAKE, 2147483647) = 0
_exit(0) = ?
Curious. I would have expected the _exit(0) call to have done everything
that's necessary. As far as I can tell from the man page, _exit is pretty
well guaranteed to terminate the program.
- Replies:
- Re: Creating Zombies with epicsThreadExitMain Andrew Johnson
- RE: Creating Zombies with epicsThreadExitMain Pearson, MR (Matthew)
- References:
- Creating Zombies with epicsThreadExitMain Michael Abbott
- Navigate by Date:
- Prev:
RE: Creating Zombies with epicsThreadExitMain Michael Abbott
- Next:
Re: Creating Zombies with epicsThreadExitMain Andrew Johnson
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
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: Creating Zombies with epicsThreadExitMain Michael Abbott
- Next:
Re: Creating Zombies with epicsThreadExitMain Andrew Johnson
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
<2008>
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|