summaryrefslogtreecommitdiffstats
path: root/debian/patches-rt/0194-debugobjects-Make-RT-aware.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches-rt/0194-debugobjects-Make-RT-aware.patch')
-rw-r--r--debian/patches-rt/0194-debugobjects-Make-RT-aware.patch32
1 files changed, 32 insertions, 0 deletions
diff --git a/debian/patches-rt/0194-debugobjects-Make-RT-aware.patch b/debian/patches-rt/0194-debugobjects-Make-RT-aware.patch
new file mode 100644
index 000000000..3fd87b158
--- /dev/null
+++ b/debian/patches-rt/0194-debugobjects-Make-RT-aware.patch
@@ -0,0 +1,32 @@
+From eaad8379256de9e0327feb6fac10f692aaee4498 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sun, 17 Jul 2011 21:41:35 +0200
+Subject: [PATCH 194/347] debugobjects: Make RT aware
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.19/older/patches-4.19.246-rt110.tar.xz
+
+Avoid filling the pool / allocating memory with irqs off().
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ lib/debugobjects.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/lib/debugobjects.c b/lib/debugobjects.c
+index 14afeeb7d6ef..e28481c402ae 100644
+--- a/lib/debugobjects.c
++++ b/lib/debugobjects.c
+@@ -376,7 +376,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);
+
+--
+2.36.1
+