]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - kernel/irq/manage.c
Merge tag 'pinctrl-v5.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
[linux.git] / kernel / irq / manage.c
index e8f7f179bf77e6a721deaaf349462edbc14ef8f3..1753486b440cb031315ac089d5e3af2b9b3d4a24 100644 (file)
@@ -23,7 +23,7 @@
 
 #include "internals.h"
 
-#ifdef CONFIG_IRQ_FORCED_THREADING
+#if defined(CONFIG_IRQ_FORCED_THREADING) && !defined(CONFIG_PREEMPT_RT)
 __read_mostly bool force_irqthreads;
 EXPORT_SYMBOL_GPL(force_irqthreads);
 
@@ -1255,8 +1255,7 @@ setup_irq_thread(struct irqaction *new, unsigned int irq, bool secondary)
         * the thread dies to avoid that the interrupt code
         * references an already freed task_struct.
         */
-       get_task_struct(t);
-       new->thread = t;
+       new->thread = get_task_struct(t);
        /*
         * Tell the thread to set its affinity. This is
         * important for shared interrupt handlers as we do