On Thu, Jan 29, 2015 at 09:55:56AM -0600, Christoph Lameter wrote: > On Thu, 29 Jan 2015, Vladimir Davydov wrote: > > > Come to think of it, do we really need to optimize slab placement in > > kmem_cache_shrink? None of its users except shrink_store expects it - > > they just want to purge the cache before destruction, that's it. May be, > > we'd better move slab placement optimization to a separate SLUB's > > private function that would be called only by shrink_store, where we can > > put up with kmalloc failures? Christoph, what do you think? > > The slabinfo tool invokes kmem_cache_shrink to optimize placement. > > Run > > slabinfo -s > > which can then be used to reduce the fragmentation. Yeah, but the tool just writes 1 to /sys/kernel/slab/cache/shrink, i.e. invokes shrink_store(), and I don't propose to remove slab placement optimization from there. What I propose is to move slab placement optimization from kmem_cache_shrink() to shrink_store(), because other users of kmem_cache_shrink() don't seem to need it at all - they just want to release empty slabs. Such a change wouldn't affect the behavior of `slabinfo -s` at all. Thanks, Vladimir -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>