aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mm/slob.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/mm/slob.c b/mm/slob.c
index 773a7aa80ab5..c56c5e57c192 100644
--- a/mm/slob.c
+++ b/mm/slob.c
@@ -398,6 +398,10 @@ static void slob_free(void *block, int size)
398 sp->units += units; 398 sp->units += units;
399 399
400 if (b < sp->free) { 400 if (b < sp->free) {
401 if (b + units == sp->free) {
402 units += slob_units(sp->free);
403 sp->free = slob_next(sp->free);
404 }
401 set_slob(b, units, sp->free); 405 set_slob(b, units, sp->free);
402 sp->free = b; 406 sp->free = b;
403 } else { 407 } else {