[$] Shrinking shrinker locking overhead
Much of the kernel's performance is dependent on caching - keeping usefulinformation around for future use to avoid the cost of looking it up again.The kernel aggressively caches pages of file data, directory entries,inodes, slab objects, and much more. Without active measures, though,caches will tend to grow without bounds, leading to memory exhaustion. Thekernel's "shrinker" mechanism exists to be that active measure, butshrinkers have some performance difficulties of their own. Thispatch series from Qi Zheng seeks to address one of the worst of thoseby removing some locking overhead.