mirror of
https://github.com/torvalds/linux.git
synced 2026-10-23 23:51:02 +02:00
slab fixes for 7.3-rc5
-----BEGIN PGP SIGNATURE----- iQFPBAABCAA5FiEEe7vIQRWZI0iWSE3xu+CwddJFiJoFAmq/c2obFIAAAAAABAAO bWFudTIsMi41KzEuMTIsMiwyAAoJELvgsHXSRYiaJYQH/ihZin6VQt7ya7uIOFko FrAaalrw62d72vi3oRTOf3aTJY+tZLnoimGYVzBFBo9E6I7J5wpDbCJM+T0XGnBU ri98rBwjJHGO0hY12lKAlgMAmo4TQyyWLJEj2lCmsThIP8YkU9e3D3GUzgBuDzU3 vo3/kKdppj4UkFJ1dYMj+lGHPw+47WY/fscfv9atYCqAzWG/em2y0zQ/ay5mfI7h X3yiwJxeR8EsIOwBEuqurBk9rz0yMErcsb9DVgyDU23Y9SxnDL5BEr4dBuUQnV+b kru/RuPJ2Ubs8ZrlCm6T6a3yjgXZOg3m/YqJPlYX1OY1MKmZ3gefBpwcth2QiEA7 nUE= =6OkX -----END PGP SIGNATURE----- Merge tag 'slab-for-7.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/mm/slab Pull slab fixes from Vlastimil Babka: - Stable fix for a potential deadlock in kfree_rcu() when called from set_cpus_allowed_force() (Harry Yoo) - MAINTAINERS update of the slab.git URL * tag 'slab-for-7.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/mm/slab: mm/slab: do not wake up kswapd in __kfree_rcu_sheaf() MAINTAINERS: update slab.git URL
This commit is contained in:
commit
4e9a2de02f
|
|
@ -25199,7 +25199,7 @@ R: David Rientjes <rientjes@google.com>
|
|||
R: Roman Gushchin <roman.gushchin@linux.dev>
|
||||
L: linux-mm@kvack.org
|
||||
S: Maintained
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab.git
|
||||
T: git git://git.kernel.org/pub/scm/linux/kernel/git/mm/slab.git
|
||||
F: Documentation/admin-guide/mm/slab.rst
|
||||
F: Documentation/mm/slab.rst
|
||||
F: include/linux/mempool.h
|
||||
|
|
|
|||
|
|
@ -5969,7 +5969,8 @@ __pcs_replace_full_main(struct kmem_cache *s, struct slub_percpu_sheaves *pcs,
|
|||
if (!allow_spin)
|
||||
return NULL;
|
||||
|
||||
empty = alloc_empty_sheaf(s, GFP_NOWAIT, SLAB_ALLOC_DEFAULT);
|
||||
/* Don't wake up kswapd, it will cause deadlock under pi_lock */
|
||||
empty = alloc_empty_sheaf(s, __GFP_NOWARN, SLAB_ALLOC_DEFAULT);
|
||||
if (empty)
|
||||
goto got_empty;
|
||||
|
||||
|
|
@ -6128,7 +6129,6 @@ bool __kfree_rcu_sheaf(struct kmem_cache *s, void *obj, unsigned int free_flags)
|
|||
struct slab_sheaf *empty;
|
||||
struct node_barn *barn;
|
||||
unsigned int alloc_flags = to_alloc_flags(free_flags);
|
||||
gfp_t gfp = allow_spin ? GFP_NOWAIT : __GFP_NOWARN;
|
||||
|
||||
/* Bootstrap or debug cache, fall back */
|
||||
if (unlikely(!cache_has_sheaves(s))) {
|
||||
|
|
@ -6157,7 +6157,8 @@ bool __kfree_rcu_sheaf(struct kmem_cache *s, void *obj, unsigned int free_flags)
|
|||
|
||||
local_unlock(&s->cpu_sheaves->lock);
|
||||
|
||||
empty = alloc_empty_sheaf(s, gfp, alloc_flags);
|
||||
/* Don't wake up kswapd, it will cause deadlock under pi_lock */
|
||||
empty = alloc_empty_sheaf(s, __GFP_NOWARN, alloc_flags);
|
||||
|
||||
if (!empty)
|
||||
goto fail;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user