• Waiman Long's avatar
    debugobjects: Scale thresholds with # of CPUs · 97dd552e
    Waiman Long authored
    On a large SMP systems with hundreds of CPUs, the current thresholds
    for allocating and freeing debug objects (256 and 1024 respectively)
    may not work well. This can cause a lot of needless calls to
    kmem_aloc() and kmem_free() on those systems.
    
    To alleviate this thrashing problem, the object freeing threshold
    is now increased to "1024 + # of CPUs * 32". Whereas the object
    allocation threshold is increased to "256 + # of CPUs * 4". That
    should make the debug objects subsystem scale better with the number
    of CPUs available in the system.
    Signed-off-by: default avatarWaiman Long <longman@redhat.com>
    Cc: Christian Borntraeger <borntraeger@de.ibm.com>
    Cc: "Du Changbin" <changbin.du@intel.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Jan Stancek <jstancek@redhat.com>
    Link: http://lkml.kernel.org/r/1483647425-4135-3-git-send-email-longman@redhat.comSigned-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    97dd552e
debugobjects.c 27.7 KB