Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 May 2020 20:49:23 +0200
From:      Kurt Jaeger <pi@freebsd.org>
To:        Kyle Evans <kevans@freebsd.org>
Cc:        jail@freebsd.org
Subject:   Re: Should killed process deref a jail?
Message-ID:  <20200506184923.GT39563@home.opsec.eu>
In-Reply-To: <CACNAnaGssAKJ1-LhfQ1yszkOYkGw0iDsFgxmcuEZmTf9M-hyTg@mail.gmail.com>
References:  <CACNAnaGssAKJ1-LhfQ1yszkOYkGw0iDsFgxmcuEZmTf9M-hyTg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi!

> In doing some testing of qemu-user-static recently, I noticed that
> killing the last process in a non-persist jail doesn't kill off the
> jail:
> 
> root@viper:/usr/src# jail -c path=/ command=yes
> ## ^C out
> 
> root@viper:/usr/src# jls
>    JID  IP Address      Hostname                      Path
>    181                                                /
> 
> root@viper:/usr/src# ps fxJ 181
> PID TT  STAT TIME COMMAND
> 
> As a result, I ended up with 82 jails pointed at my armv7 sysroot and
> much surprise when I checked out `jls`. This vaguely smells like a
> bug, is this something that should be fixed?

Depends. If the last process held some socket and the socket
is still in the state LINGER.

See

https://deepix.github.io/2016/10/21/tcprst.html

for more details, after the heading 'What is SO_LINGER?'

You can probably see those sockets with

sockstat -s | grep -v ESTAB | grep -v LISTEN | grep -v TIME_WAIT | grep -v stream

-- 
pi@opsec.eu            +49 171 3101372                    Now what ?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20200506184923.GT39563>