summaryrefslogtreecommitdiffstats
path: root/mm/slub.c
diff options
context:
space:
mode:
authorVlastimil Babka <vbabka@suse.cz>2023-09-08 09:57:13 +0200
committerVlastimil Babka <vbabka@suse.cz>2023-10-02 11:54:32 +0200
commitc7355d755698a01ff4187a0d2f6ad21ba233dc21 (patch)
tree72d186330293c9206b52a4d5de15849d3b657502 /mm/slub.c
parentmm/slub: add sanity check for slub_min/max_order cmdline setup (diff)
downloadlinux-c7355d755698a01ff4187a0d2f6ad21ba233dc21.tar.xz
linux-c7355d755698a01ff4187a0d2f6ad21ba233dc21.zip
mm/slub: simplify the last resort slab order calculation
If calculate_order() can't fit even a single large object within slub_max_order, it will try using the smallest necessary order that may exceed slub_max_order but not MAX_ORDER. Currently this is done with a call to calc_slab_order() which is unnecessary. We can simply use get_order(size). No functional change. Signed-off-by: Vlastimil Babka <vbabka@suse.cz> Reviewed-by: Feng Tang <feng.tang@intel.com> Reviewed-and-tested-by: Jay Patel <jaypatel@linux.ibm.com>
Diffstat (limited to 'mm/slub.c')
-rw-r--r--mm/slub.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/slub.c b/mm/slub.c
index b36e5eb0ccb7..0710adb5642a 100644
--- a/mm/slub.c
+++ b/mm/slub.c
@@ -4193,7 +4193,7 @@ static inline int calculate_order(unsigned int size)
/*
* Doh this slab cannot be placed using slub_max_order.
*/
- order = calc_slab_order(size, 1, MAX_ORDER, 1);
+ order = get_order(size);
if (order <= MAX_ORDER)
return order;
return -ENOSYS;