DragonFly BSD
DragonFly commits List (threaded) for 2011-03
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

git: kernel - Fix a few MP races against process status


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Sat, 5 Mar 2011 16:08:15 -0800 (PST)

commit 0d78b86e0a2315042ff35cf013868289cb1c7acf
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Sat Mar 5 16:05:20 2011 -0800

    kernel - Fix a few MP races against process status
    
    * proc->p_token is required when traversing p->p_lwp_tree.
    
    * Reorder lwp insertion on lwp_fork() so scan races see a whole lwp
      instead of a partially initialized one.
    
    * Check for NULL p->p_pgrp and friends when only using proc_token to
      scan the process list to deal with new processes that are still in the
      middle of being fork()'d.
    
    Reported-by: Peter Avalos <peter@theshell.com>,
    	     Antonio Huete Jimenez <tuxillo@crater.dragonflybsd.org>

Summary of changes:
 sys/kern/kern_fork.c  |   25 +++++++++++++------------
 sys/kern/kern_proc.c  |   28 +++++++++++++++++++++-------
 sys/kern/kern_synch.c |   25 ++++++++++++++++---------
 3 files changed, 50 insertions(+), 28 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/0d78b86e0a2315042ff35cf013868289cb1c7acf


-- 
DragonFly BSD source repository



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]