summaryrefslogtreecommitdiffstats
path: root/mm
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2023-01-19 21:24:39 +0100
committerLinus Torvalds <torvalds@linux-foundation.org>2023-01-19 21:24:39 +0100
commit46f0cba31ccc28cfb3e65d0ab49a9a7e58c0ef9f (patch)
treebedf728e62e6ced52548268624ed582fab8b81a0 /mm
parentMerge tag 'zonefs-6.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/d... (diff)
parentmm, slab: periodically resched in drain_freelist() (diff)
downloadlinux-46f0cba31ccc28cfb3e65d0ab49a9a7e58c0ef9f.tar.xz
linux-46f0cba31ccc28cfb3e65d0ab49a9a7e58c0ef9f.zip
Merge tag 'slab-for-6.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab
Pull slab fix from Vlastimil Babka: "Just a single fix, since the lkp report originally for a slub-tiny commit ended up being a gcov/compiler bug: - periodically resched in SLAB's drain_freelist(), by David Rientjes" * tag 'slab-for-6.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab: mm, slab: periodically resched in drain_freelist()
Diffstat (limited to 'mm')
-rw-r--r--mm/slab.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/slab.c b/mm/slab.c
index 7a269db050ee..29300fc1289a 100644
--- a/mm/slab.c
+++ b/mm/slab.c
@@ -2211,6 +2211,8 @@ static int drain_freelist(struct kmem_cache *cache,
raw_spin_unlock_irq(&n->list_lock);
slab_destroy(cache, slab);
nr_freed++;
+
+ cond_resched();
}
out:
return nr_freed;