]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit - lib/debugobjects.c
debugobjects: Scale thresholds with # of CPUs
authorWaiman Long <longman@redhat.com>
Thu, 5 Jan 2017 20:17:04 +0000 (15:17 -0500)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 4 Feb 2017 08:01:55 +0000 (09:01 +0100)
commit97dd552eb23c83dbf626a6e84666c7e281375d47
treea9a5358b76f201f915051d42ea5e1358a93ab9c0
parentc4b73aabd0989d93b82894417ae501690bd1db5e
debugobjects: Scale thresholds with # of CPUs

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: Waiman 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.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
lib/debugobjects.c