Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 May 2009 11:18:00 -0700
From:      Kip Macy <kmacy@freebsd.org>
To:        John Baldwin <jhb@freebsd.org>
Cc:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   Re: svn commit: r192604 - in user/kmacy/releng_7_2_fcs/sys: dev/hwpmc sys
Message-ID:  <3c1674c90905261118y282d9b0fn7d54630f507d8363@mail.gmail.com>
In-Reply-To: <200905260830.36831.jhb@freebsd.org>
References:  <200905222145.n4MLjhm3019802@svn.freebsd.org> <200905260830.36831.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, May 26, 2009 at 5:30 AM, John Baldwin <jhb@freebsd.org> wrote:
> On Friday 22 May 2009 5:45:43 pm Kip Macy wrote:
>> Author: kmacy
>> Date: Fri May 22 21:45:43 2009
>> New Revision: 192604
>> URL: http://svn.freebsd.org/changeset/base/192604
>>
>> Log:
>> =A0 - remove pmc_kthread_mtx
>> =A0 - replace sleep/wakeup on kthread with a condvar
>
> If you do not sleep on the kthread/kproc when waiting for a kthread to
> exit, then you open up a race window. =A0Usually this matters more for
> any kthreads that live in a module since the race allows the module to
> be unmapped before the thread is finished executing code from the module
> resulting in a fatal page fault in the kernel.


Yes, that is why the kthread explicitly calls cv_signal after clearing
the kthread pointer.

Thanks,
Kip



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