tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: hangup in close(2) after posix_openpt(3)



dholland-tech@ wrote:

>  > > On Sat, Oct 17, 2015 at 03:23:44PM +0900, Izumi Tsutsui wrote:
>  > > > I notice we can avoid the hangup in lwp_park() after exit(3)
>  > > > by calling _exit(2) instead exit(3) in the parent canuum,
>  > > > so I'll put it as a kludge for now.
>  > > 
>  > > Be careful, that bypasses all atexit handler. The reason why it might
>  > > work is that this includes the fflush of stdin and stdout.
>  > 
>  > Do you have any idea about "hangup in lwp_park() after exit(3)"?
>  > Is it a bug, or expected behavior?
>  > 
>  > Currently the hangup in lwp_park() (which can be killed only by kill -9)
>  > is much annoying than _exit(2) kludge.
> 
> lwp_park is what happens when a threaded process is blocked, so my
> first guess would be an application-level deadlock.

Hmm, even after exit(3)?
Could posix_openpt(3) + fork(2)/execvp(3) (or curses(3)) without pthread
cause such deadlock?

---
Izumi Tsutsui


Home | Main Index | Thread Index | Old Index