diff options
author | Vlastimil Babka <vbabka@suse.cz> | 2021-05-21 14:03:23 +0200 |
---|---|---|
committer | Vlastimil Babka <vbabka@suse.cz> | 2021-09-04 10:21:32 +0200 |
commit | 25c00c506e8176d03f9ad821cc349230dfb5dc1a (patch) | |
tree | 4942ab6bec74b8736658937c427378c65563c89d /mm/ioremap.c | |
parent | mm, slub: protect put_cpu_partial() with disabled irqs instead of cmpxchg (diff) | |
download | linux-25c00c506e8176d03f9ad821cc349230dfb5dc1a.tar.xz linux-25c00c506e8176d03f9ad821cc349230dfb5dc1a.zip |
mm, slub: use migrate_disable() on PREEMPT_RT
We currently use preempt_disable() (directly or via get_cpu_ptr()) to stabilize
the pointer to kmem_cache_cpu. On PREEMPT_RT this would be incompatible with
the list_lock spinlock. We can use migrate_disable() instead, but that
increases overhead on !PREEMPT_RT as it's an unconditional function call.
In order to get the best available mechanism on both PREEMPT_RT and
!PREEMPT_RT, introduce private slub_get_cpu_ptr() and slub_put_cpu_ptr()
wrappers and use them.
Signed-off-by: Vlastimil Babka <vbabka@suse.cz>
Diffstat (limited to 'mm/ioremap.c')
0 files changed, 0 insertions, 0 deletions