git: DragonFly_RELEASE_2_8 kernel - x86_64 - Add additional chec

看板DFBSD_commit作者時間15年前 (2010/11/20 09:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit 486177ef9c4bdd3da9da4afc6cbc965a1d3b179c Author: Matthew Dillon <dillon@apollo.backplane.com> Date: Sat Oct 23 09:35:14 2010 -0700 kernel - x86_64 - Add additional checks to lwp_wait() & friends * lwp_wait() must defer reaping of a lwp that is still running on another cpu (i.e. in the midst of exiting). * It shouldn't be possible for this to happen but just incase the thread gets switched out after TDF_EXITING has been set, also make sure the threat is no longer on the LWKT run queue. * Remove old debugging in the LWKT scheduler path. * Protect gd_freetd (per-cpu td cache) with a critical section. Again this case should not occur as new threads are not allocated from interrupts, but protect it anyway. Also assert that the cached free td is in no way still scheduled. Note that this cache is required to ensure that the td does not end up in the MP-accessible objcache before it has been fully descheduled. Summary of changes: sys/kern/kern_exit.c | 6 +++--- sys/kern/lwkt_thread.c | 48 +++++++++++++----------------------------------- 2 files changed, 16 insertions(+), 38 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/486177ef9c4bdd3da9da4afc6cbc965a1d3b179c -- DragonFly BSD source repository
文章代碼(AID): #1CvoKiDd (DFBSD_commit)