Patch "bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     bus-omap_l3_noc-mark-l3-irqs-as-irqf_no_thread.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 5a996b959a631a68321b89b262af7ccc9718909f
Author: Grygorii Strashko <grygorii.strashko@xxxxxx>
Date:   Thu Jan 28 21:15:48 2021 +0200

    bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD
    
    [ Upstream commit 7d7275b3e866cf8092bd12553ec53ba26864f7bb ]
    
    The main purpose of l3 IRQs is to catch OCP bus access errors and identify
    corresponding code places by showing call stack, so it's important to
    handle L3 interconnect errors as fast as possible. On RT these IRQs will
    became threaded and will be scheduled much more late from the moment actual
    error occurred so showing completely useless information.
    
    Hence, mark l3 IRQs as IRQF_NO_THREAD so they will not be forced threaded
    on RT or if force_irqthreads = true.
    
    Fixes: 0ee7261c9212 ("drivers: bus: Move the OMAP interconnect driver to drivers/bus/")
    Signed-off-by: Grygorii Strashko <grygorii.strashko@xxxxxx>
    Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/bus/omap_l3_noc.c b/drivers/bus/omap_l3_noc.c
index b040447575ad..dcfb32ee5cb6 100644
--- a/drivers/bus/omap_l3_noc.c
+++ b/drivers/bus/omap_l3_noc.c
@@ -285,7 +285,7 @@ static int omap_l3_probe(struct platform_device *pdev)
 	 */
 	l3->debug_irq = platform_get_irq(pdev, 0);
 	ret = devm_request_irq(l3->dev, l3->debug_irq, l3_interrupt_handler,
-			       0x0, "l3-dbg-irq", l3);
+			       IRQF_NO_THREAD, "l3-dbg-irq", l3);
 	if (ret) {
 		dev_err(l3->dev, "request_irq failed for %d\n",
 			l3->debug_irq);
@@ -294,7 +294,7 @@ static int omap_l3_probe(struct platform_device *pdev)
 
 	l3->app_irq = platform_get_irq(pdev, 1);
 	ret = devm_request_irq(l3->dev, l3->app_irq, l3_interrupt_handler,
-			       0x0, "l3-app-irq", l3);
+			       IRQF_NO_THREAD, "l3-app-irq", l3);
 	if (ret)
 		dev_err(l3->dev, "request_irq failed for %d\n", l3->app_irq);
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux