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

git: DragonFly_RELEASE_2_6 kernel - Fix lwbuf leak for i386


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 31 Mar 2010 00:06:33 -0700 (PDT)

commit 360dc0fa99f761a51be278b81f55ecf85613d72d
Author: Matthew Dillon <dillon@apollo.backplane.com>
Date:   Tue Mar 30 23:45:52 2010 -0700

    kernel - Fix lwbuf leak for i386
    
    * lwbufs were not being freed back to the originating cpu, creating a
      situation where an infinite number of lwbufs could be allocated.
    
    * Refactor the lwbuf code for i386.  Track the cpu in the lwbuf, remove
      lwbuf_free_kvp, track the number of lwbufs on the free list for each
      cpu.
    
      Free a lwbuf back to the cpu it was originally created on.
    
      Destroy lwbufs and related kmem if the number of free lwbufs on a cpu
      exceeds 256.
    
    * This is a temporary fix until the i386 code can be adjusted to use the
      objcache again.

Summary of changes:
 sys/cpu/i386/include/lwbuf.h           |   13 ++--
 sys/cpu/i386/misc/lwbuf.c              |  110 ++++++++++++++------------------
 sys/platform/pc32/include/globaldata.h |    3 +-
 3 files changed, 56 insertions(+), 70 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/360dc0fa99f761a51be278b81f55ecf85613d72d


-- 
DragonFly BSD source repository



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