Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Apr 2016 23:24:18 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 209112] /usr/sbin/jail jails fail to launch with possible race when jails mount common dir with nullfs
Message-ID:  <bug-209112-8-2Aer3lGKcJ@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-209112-8@https.bugs.freebsd.org/bugzilla/>
References:  <bug-209112-8@https.bugs.freebsd.org/bugzilla/>

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

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=209112

Jamie Gritton <jamie@FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jamie@FreeBSD.org

--- Comment #1 from Jamie Gritton <jamie@FreeBSD.org> ---
There are a couple problems with the jail startup script, neither of which is
exactly at the center of this complaint.

The first is the lack of logging in case of failure.  The $_tmp file is removed
(after printing only the last line), which it should be preserved somehow.  I
don't know if printing the whole thing out is the right answer, or appending it
to some long file, but removing it is problematic.

The second is the parallel start.  There is a jail_parallel_start flag, but
it's only checked when starting a subset of jails (i.e. "service jail start foo
bar") and not when starting all jails.

Both of these should be fixed, but they're not the source of your problem, only
something that makes it harder to solve.  Unfortunately, I wasn't able to
recreate your issue, and was in fact able to create 100 jails each with a
nullfs-mount directory, in a setup based on your noted jail.conf file.

Still, I have a guess: the nullfs module.  The error you're getting is ENODEV,
is given when mounting a filesystem type that depends on a kernel module and
loading that module fails.  Now there's some kernel locking around the module
load that should make it so different mounts tying to load the same module at
the same time don't run into each other, and like I mentioned it worked out for
me.  But of the places where ENODEV was mentioned, that seemed the most likely.

I'll leave this bug open, but I'll only be looking at the jail part of it, not
at the central issue.  That's out of my area and what I failed to duplicate.

-- 
You are receiving this mail because:
You are the assignee for the bug.


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-209112-8-2Aer3lGKcJ>