summaryrefslogtreecommitdiffstats
path: root/lib/debugobjects.c
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2021-09-20 15:56:58 +0100
committerMark Brown <broonie@kernel.org>2021-09-21 15:23:35 +0100
commitffb1e76f4f32d2b8ea4189df0484980370476395 (patch)
treec62376eab558809973dc5b71806df07c388bfc1a /lib/debugobjects.c
parent2bab94090b01bc593d8bc25f68df41f198721173 (diff)
parente4e737bb5c170df6135a127739a9e6148ee3da82 (diff)
downloadcachepc-linux-ffb1e76f4f32d2b8ea4189df0484980370476395.tar.gz
cachepc-linux-ffb1e76f4f32d2b8ea4189df0484980370476395.zip
Merge tag 'v5.15-rc2' into spi-5.15
Linux 5.15-rc2
Diffstat (limited to 'lib/debugobjects.c')
-rw-r--r--lib/debugobjects.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/debugobjects.c b/lib/debugobjects.c
index 9e14ae02306b..6946f8e204e3 100644
--- a/lib/debugobjects.c
+++ b/lib/debugobjects.c
@@ -557,7 +557,12 @@ __debug_object_init(void *addr, const struct debug_obj_descr *descr, int onstack
struct debug_obj *obj;
unsigned long flags;
- fill_pool();
+ /*
+ * On RT enabled kernels the pool refill must happen in preemptible
+ * context:
+ */
+ if (!IS_ENABLED(CONFIG_PREEMPT_RT) || preemptible())
+ fill_pool();
db = get_bucket((unsigned long) addr);