mirror of
https://github.com/torvalds/linux.git
synced 2026-06-04 04:23:35 +02:00
slab fix for 6.18-rc6
-----BEGIN PGP SIGNATURE----- iQFPBAABCAA5FiEEe7vIQRWZI0iWSE3xu+CwddJFiJoFAmkWKmwbFIAAAAAABAAO bWFudTIsMi41KzEuMTEsMiwyAAoJELvgsHXSRYia6V4H/3fH24KLh0jsSK1I0Ifk Eus5+Lv79/78HkpTHEMb/KeSZ8hNEtGAjZq5aBdV/9lXhEfDg9nXok0qqfSVdynx OsRp3xz1lOTJxZnkWTNkl0fBwASCiKG586UrFyCkl1h/mqhy7TpBilBxyLpNI/kO aCRf9mjAGmqliwZzV555LywKg8tcaDDop+6Q6qEL0kWt9W++GVgqLMfP3Jh71Hl/ HU7uuIkFJqfrBDFmtuNEnR3Nta+k5NIENNjcEMAjSQWHzMgCK7l3sapOm70+/FAS 7XLjvxJVonIj805qqxyEXqO32MEun+eMKPN4+VPSTa96O5lwsSQTOhO44i5iwFUz 82M= =wl8O -----END PGP SIGNATURE----- Merge tag 'slab-for-6.18-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab Pull slab fix from Vlastimil Babka: - Fix memory leak of objects from remote NUMA node when bulk freeing to a cache with sheaves (Harry Yoo) * tag 'slab-for-6.18-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab: mm/slub: fix memory leak in free_to_pcs_bulk()
This commit is contained in:
commit
9b9e43704d
|
|
@ -6336,8 +6336,6 @@ static void free_to_pcs_bulk(struct kmem_cache *s, size_t size, void **p)
|
|||
|
||||
if (unlikely(!slab_free_hook(s, p[i], init, false))) {
|
||||
p[i] = p[--size];
|
||||
if (!size)
|
||||
goto flush_remote;
|
||||
continue;
|
||||
}
|
||||
|
||||
|
|
@ -6352,6 +6350,9 @@ static void free_to_pcs_bulk(struct kmem_cache *s, size_t size, void **p)
|
|||
i++;
|
||||
}
|
||||
|
||||
if (!size)
|
||||
goto flush_remote;
|
||||
|
||||
next_batch:
|
||||
if (!local_trylock(&s->cpu_sheaves->lock))
|
||||
goto fallback;
|
||||
|
|
@ -6406,6 +6407,9 @@ static void free_to_pcs_bulk(struct kmem_cache *s, size_t size, void **p)
|
|||
goto next_batch;
|
||||
}
|
||||
|
||||
if (remote_nr)
|
||||
goto flush_remote;
|
||||
|
||||
return;
|
||||
|
||||
no_empty:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user