Hello everyone,

I decided to investigate this bug because I think the bug is quite
irritating. After adding some ddb show commands to the source and
reading a lot of code, I think I understand the problem:

The tty code doesn't leak any ucreds, it's the devfs code that
crhold()'s an ucred structure. When a new pty is needed, the tty_pty
code allocates a new pty. It also runs make_dev_cred(), to which it
passes the thread's ucred. This function calls make_dev_credv(), which
finally runs crhold().

As long as pty's have been allocated that have been created by threads
in a jail, the prison structure has more references, causing the zombie
jails to exist.

Yours,
-- 
 Ed Schouten <[EMAIL PROTECTED]>
 WWW: http://g-rave.nl/

Attachment: pgpswPIdLYTmc.pgp
Description: PGP signature

Reply via email to