Thread (41 messages) 41 messages, 4 authors, 2021-11-17
STALE1704d
Revisions (3)
  1. rfc current
  2. v2 [diff vs current]
  3. v4 [diff vs current]

[RFC PATCH 01/32] mm/slab: Dissolve slab_map_pages() in its caller

From: Vlastimil Babka <hidden>
Date: 2021-11-16 00:16:42
Subsystem: memory management, the rest · Maintainers: Andrew Morton, Linus Torvalds

The function no longer does what its name and comment suggests, and just sets
two struct page fields, which can be done directly in its sole caller.

Signed-off-by: Vlastimil Babka <redacted>
---
 mm/slab.c | 15 ++-------------
 1 file changed, 2 insertions(+), 13 deletions(-)
diff --git a/mm/slab.c b/mm/slab.c
index da132a9ae6f8..8e71968300c8 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -2546,18 +2546,6 @@ static void slab_put_obj(struct kmem_cache *cachep,
 	set_free_obj(page, page->active, objnr);
 }
 
-/*
- * Map pages beginning at addr to the given cache and slab. This is required
- * for the slab allocator to be able to lookup the cache and slab of a
- * virtual address for kfree, ksize, and slab debugging.
- */
-static void slab_map_pages(struct kmem_cache *cache, struct page *page,
-			   void *freelist)
-{
-	page->slab_cache = cache;
-	page->freelist = freelist;
-}
-
 /*
  * Grow (by 1) the number of slabs within a cache.  This is called by
  * kmem_cache_alloc() when there are no active objs left in a cache.
@@ -2621,7 +2609,8 @@ static struct page *cache_grow_begin(struct kmem_cache *cachep,
 	if (OFF_SLAB(cachep) && !freelist)
 		goto opps1;
 
-	slab_map_pages(cachep, page, freelist);
+	page->slab_cache = cachep;
+	page->freelist = freelist;
 
 	cache_init_objs(cachep, page);
 
-- 
2.33.1

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help