aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-07-17 21:41:35 +0200
committerSebastian Andrzej Siewior <bigeasy@linutronix.de>2016-02-13 00:36:22 +0100
commite689ddc887458f0841fd8f74110a985c91621e42 (patch)
treecfee4f0ccc635f800d94b347131979ddfb4d2c6e
parent12d469a7fce84b5093cf081c7cf293a4a7d9e21b (diff)
downloadrt-linux-e689ddc887458f0841fd8f74110a985c91621e42.tar.gz
debugobjects: Make RT aware
Avoid filling the pool / allocating memory with irqs off(). Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--lib/debugobjects.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/debugobjects.c b/lib/debugobjects.c
index 547f7f923dbcb..8fcdbc2fc6d06 100644
--- a/lib/debugobjects.c
+++ b/lib/debugobjects.c
@@ -309,7 +309,10 @@ __debug_object_init(void *addr, struct debug_obj_descr *descr, int onstack)
struct debug_obj *obj;
unsigned long flags;
- fill_pool();
+#ifdef CONFIG_PREEMPT_RT_FULL
+ if (preempt_count() == 0 && !irqs_disabled())
+#endif
+ fill_pool();
db = get_bucket((unsigned long) addr);