One of the strange issues in include/linux/slab.h that it contains a list of global slab caches. The following patches remove all the global definitions from slab.h and find other ways of defining these caches. 6 of the 7 defined caches are rarely used. One is never used.