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

git: kernel - Fix a few edge cases in subr_blist.c


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Tue, 29 Nov 2011 20:49:31 -0800 (PST)

commit 3cd891f0bef92e5d211330fa006be8d9319c4dd0
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Tue Nov 29 20:41:20 2011 -0800

    kernel - Fix a few edge cases in subr_blist.c
    
    * In the all-allocated special case set bm_bighint to 0 instead of to
      count.  This fixes an edge case where failed allocations wind up
      traversing too much of the radix tree.
    
    * In the all-free special case be sure to set bm_bighint to the radix,
      higher layers check bm_bighint when recursing.  (This bug could not occur
      unless you had 4 swap devices configured).
    
    * Improve code documentation and minor cleanups.

Summary of changes:
 sys/kern/subr_blist.c |   66 +++++++++++++++++++++++++++++--------------------
 1 files changed, 39 insertions(+), 27 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/3cd891f0bef92e5d211330fa006be8d9319c4dd0


-- 
DragonFly BSD source repository



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