OSDN Git Service

mm/slub: Convert kfree() to use a struct slab
authorMatthew Wilcox (Oracle) <willy@infradead.org>
Mon, 4 Oct 2021 13:45:59 +0000 (14:45 +0100)
committerVlastimil Babka <vbabka@suse.cz>
Thu, 6 Jan 2022 11:25:57 +0000 (12:25 +0100)
commitd835eef4fc26241258c524cb32b91cbb3551ca62
tree01d3fd83a25c54168fbce44ec5fb64dd68435030
parentcc465c3b23f8db1896c1197d2f5799e97f6e617b
mm/slub: Convert kfree() to use a struct slab

Convert kfree(), kmem_cache_free() and ___cache_free() to resolve object
addresses to struct slab, using folio as intermediate step where needed.
Keep passing the result as struct page for now in preparation for mass
conversion of internal functions.

[ vbabka@suse.cz: Use folio as intermediate step when checking for
  large kmalloc pages, and when freeing them - rename
  free_nonslab_page() to free_large_kmalloc() that takes struct folio ]

Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Reviewed-by: Roman Gushchin <guro@fb.com>
mm/slub.c