In 1.276 of kern/subr_trap.c I introduced a mechanism for delaying

a process return to userspace if it had pending GEOM events.

We need to have the same check in the exit pass to catch the case
where a GEOM related filedescriptor is not explicitly closed by
the process.

Bumped into by:	people using dd(1) to build releases, nanobsd etc.
This commit is contained in:
Poul-Henning Kamp 2005-01-29 14:03:41 +00:00
parent dc66c5fe6f
commit a258707313
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=140961

View File

@ -237,6 +237,13 @@ exit1(struct thread *td, int rv)
fdfree(td);
mtx_unlock(&Giant);
/*
* If this thread tickled GEOM, we need to wait for the giggling to
* stop before we return to userland
*/
if (td->td_pflags & TDP_GEOM)
g_waitidle();
/*
* Remove ourself from our leader's peer list and wake our leader.
*/