mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 01:24:47 +01:00
slab fix for 6.19-rc7
-----BEGIN PGP SIGNATURE----- iQFPBAABCAA5FiEEe7vIQRWZI0iWSE3xu+CwddJFiJoFAmlwq+MbFIAAAAAABAAO bWFudTIsMi41KzEuMTEsMiwyAAoJELvgsHXSRYiagDcH+gIapvbu8Y7gi3XT1rcj YBalI8n3MH5ZpZP/a44Xs7rICb2Kmk2Kre6x22vI62aGmMHc3vJWlXslWSXrCLZj d5K3ILSkV70GVgtVYEJv3iFde/OCGS6ksakzjZMs4vSMJhsAWNrRTZiVd6p9mNSw yy+PM34xt6hTL7nYSLMTmVoS7zHiZDIusqElto721ZCiTG9Nb7FdojvneKKYvCt8 5WW7h4FoKEFBv5Q8oCWuevSGEclxOHL3H+3dlDy2/OE2SaqAWB5AcwOvoc6Gbzgk bzxF0vLjQX1YP60J/GNOOueEHUhhiqNQwnkhUvqq3rg08qNVQ2jRz5J4luxtrMB6 tqU= =7faF -----END PGP SIGNATURE----- Merge tag 'slab-for-6.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab Pull slab fix from Vlastimil Babka: - A stable fix for kmalloc_nolock() in non-preemptible contexts on PREEMPT_RT (Swaraj Gaikwad) * tag 'slab-for-6.19-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/vbabka/slab: slab: fix kmalloc_nolock() context check for PREEMPT_RT
This commit is contained in:
commit
119d1cbc6e
1 changed files with 6 additions and 2 deletions
|
|
@ -5694,8 +5694,12 @@ void *kmalloc_nolock_noprof(size_t size, gfp_t gfp_flags, int node)
|
|||
if (unlikely(!size))
|
||||
return ZERO_SIZE_PTR;
|
||||
|
||||
if (IS_ENABLED(CONFIG_PREEMPT_RT) && (in_nmi() || in_hardirq()))
|
||||
/* kmalloc_nolock() in PREEMPT_RT is not supported from irq */
|
||||
if (IS_ENABLED(CONFIG_PREEMPT_RT) && !preemptible())
|
||||
/*
|
||||
* kmalloc_nolock() in PREEMPT_RT is not supported from
|
||||
* non-preemptible context because local_lock becomes a
|
||||
* sleeping lock on RT.
|
||||
*/
|
||||
return NULL;
|
||||
retry:
|
||||
if (unlikely(size > KMALLOC_MAX_CACHE_SIZE))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue