All of lore.kernel.org
 help / color / mirror / Atom feed
From: Santosh Shilimkar <santosh.shilimkar@ti.com>
To: linux-omap@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org,
	Todd Poynor <toddpoynor@google.com>,
	sricharan <r.sricharan@ti.com>,
	Santosh Shilimkar <santosh.shilimkar@ti.com>
Subject: [PATCH 3/8] OMAP: Fix a BUG in l3 error handler.
Date: Thu, 8 Sep 2011 10:52:02 +0530	[thread overview]
Message-ID: <1315459327-3285-4-git-send-email-santosh.shilimkar@ti.com> (raw)
In-Reply-To: <1315459327-3285-1-git-send-email-santosh.shilimkar@ti.com>

From: Todd Poynor <toddpoynor@google.com>

With the current sequence of registering the irq and
assigning it to the app_irq, debug_irq driver variables,
there can be corner cases where the pending irq gets
triggered immediately after registering, handler gets called
resulting in a crash. So changed this sequence.

Signed-off-by: sricharan <r.sricharan@ti.com>
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
---
 arch/arm/mach-omap2/omap_l3_noc.c |   12 +++++-------
 1 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_l3_noc.c b/arch/arm/mach-omap2/omap_l3_noc.c
index d560c88..cf237dd 100644
--- a/arch/arm/mach-omap2/omap_l3_noc.c
+++ b/arch/arm/mach-omap2/omap_l3_noc.c
@@ -124,7 +124,7 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 {
 	static struct omap4_l3		*l3;
 	struct resource	*res;
-	int ret, irq;
+	int ret;
 
 	l3 = kzalloc(sizeof(*l3), GFP_KERNEL);
 	if (!l3)
@@ -176,8 +176,8 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 	/*
 	 * Setup interrupt Handlers
 	 */
-	irq = platform_get_irq(pdev, 0);
-	ret = request_irq(irq,
+	l3->debug_irq = platform_get_irq(pdev, 0);
+	ret = request_irq(l3->debug_irq,
 			l3_interrupt_handler,
 			IRQF_DISABLED, "l3-dbg-irq", l3);
 	if (ret) {
@@ -185,10 +185,9 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 					 OMAP44XX_IRQ_L3_DBG);
 		goto err3;
 	}
-	l3->debug_irq = irq;
 
-	irq = platform_get_irq(pdev, 1);
-	ret = request_irq(irq,
+	l3->app_irq = platform_get_irq(pdev, 1);
+	ret = request_irq(l3->app_irq,
 			l3_interrupt_handler,
 			IRQF_DISABLED, "l3-app-irq", l3);
 	if (ret) {
@@ -196,7 +195,6 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 					 OMAP44XX_IRQ_L3_APP);
 		goto err4;
 	}
-	l3->app_irq = irq;
 
 	return 0;
 
-- 
1.7.4.1


WARNING: multiple messages have this Message-ID (diff)
From: santosh.shilimkar@ti.com (Santosh Shilimkar)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/8] OMAP: Fix a BUG in l3 error handler.
Date: Thu, 8 Sep 2011 10:52:02 +0530	[thread overview]
Message-ID: <1315459327-3285-4-git-send-email-santosh.shilimkar@ti.com> (raw)
In-Reply-To: <1315459327-3285-1-git-send-email-santosh.shilimkar@ti.com>

From: Todd Poynor <toddpoynor@google.com>

With the current sequence of registering the irq and
assigning it to the app_irq, debug_irq driver variables,
there can be corner cases where the pending irq gets
triggered immediately after registering, handler gets called
resulting in a crash. So changed this sequence.

Signed-off-by: sricharan <r.sricharan@ti.com>
Signed-off-by: Todd Poynor <toddpoynor@google.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
---
 arch/arm/mach-omap2/omap_l3_noc.c |   12 +++++-------
 1 files changed, 5 insertions(+), 7 deletions(-)

diff --git a/arch/arm/mach-omap2/omap_l3_noc.c b/arch/arm/mach-omap2/omap_l3_noc.c
index d560c88..cf237dd 100644
--- a/arch/arm/mach-omap2/omap_l3_noc.c
+++ b/arch/arm/mach-omap2/omap_l3_noc.c
@@ -124,7 +124,7 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 {
 	static struct omap4_l3		*l3;
 	struct resource	*res;
-	int ret, irq;
+	int ret;
 
 	l3 = kzalloc(sizeof(*l3), GFP_KERNEL);
 	if (!l3)
@@ -176,8 +176,8 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 	/*
 	 * Setup interrupt Handlers
 	 */
-	irq = platform_get_irq(pdev, 0);
-	ret = request_irq(irq,
+	l3->debug_irq = platform_get_irq(pdev, 0);
+	ret = request_irq(l3->debug_irq,
 			l3_interrupt_handler,
 			IRQF_DISABLED, "l3-dbg-irq", l3);
 	if (ret) {
@@ -185,10 +185,9 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 					 OMAP44XX_IRQ_L3_DBG);
 		goto err3;
 	}
-	l3->debug_irq = irq;
 
-	irq = platform_get_irq(pdev, 1);
-	ret = request_irq(irq,
+	l3->app_irq = platform_get_irq(pdev, 1);
+	ret = request_irq(l3->app_irq,
 			l3_interrupt_handler,
 			IRQF_DISABLED, "l3-app-irq", l3);
 	if (ret) {
@@ -196,7 +195,6 @@ static int __init omap4_l3_probe(struct platform_device *pdev)
 					 OMAP44XX_IRQ_L3_APP);
 		goto err4;
 	}
-	l3->app_irq = irq;
 
 	return 0;
 
-- 
1.7.4.1

  parent reply	other threads:[~2011-09-08  5:22 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-09-08  5:21 [PATCH 0/8] OMAP3/4: Misc fixes and clean-up Santosh Shilimkar
2011-09-08  5:21 ` Santosh Shilimkar
2011-09-08  5:22 ` [PATCH 1/8] OMAP: hwmod: Fix the addr spaces count API Santosh Shilimkar
2011-09-08  5:22   ` Santosh Shilimkar
2011-09-08  7:47   ` Cousson, Benoit
2011-09-08  7:47     ` Cousson, Benoit
2011-09-08  5:22 ` [PATCH 2/8] OMAP: Improve register access in L3 Error handler Santosh Shilimkar
2011-09-08  5:22   ` Santosh Shilimkar
2011-09-08  5:22 ` Santosh Shilimkar [this message]
2011-09-08  5:22   ` [PATCH 3/8] OMAP: Fix a BUG in l3 error handler Santosh Shilimkar
2011-09-08  5:22 ` [PATCH 4/8] OMAP: Fix indentation issues " Santosh Shilimkar
2011-09-08  5:22   ` Santosh Shilimkar
2011-09-08  5:22 ` [PATCH 5/8] OMAP: Fix sparse warnings " Santosh Shilimkar
2011-09-08  5:22   ` Santosh Shilimkar
2011-09-08  5:22 ` [PATCH 6/8] OMAP: Print Initiator name for l3 custom error Santosh Shilimkar
2011-09-08  5:22   ` Santosh Shilimkar
2011-09-08  5:22 ` [PATCH 7/8] OMAP4: clock: Add CPU local timer clock node Santosh Shilimkar
2011-09-08  5:22   ` Santosh Shilimkar
2011-09-29 19:12   ` Paul Walmsley
2011-09-29 19:12     ` Paul Walmsley
2011-09-30  9:14     ` Shilimkar, Santosh
2011-09-30  9:14       ` Shilimkar, Santosh
2011-09-29 21:30   ` Linus Walleij
2011-09-29 21:30     ` Linus Walleij
2011-09-30  9:15     ` Shilimkar, Santosh
2011-09-30  9:15       ` Shilimkar, Santosh
2011-12-08 23:02       ` Turquette, Mike
2011-12-08 23:02         ` Turquette, Mike
2011-12-12  8:15         ` Shilimkar, Santosh
2011-12-12  8:15           ` Shilimkar, Santosh
2011-09-08  5:22 ` [PATCH 8/8] OMAP4: Fix the emif and dmm virtual mapping Santosh Shilimkar
2011-09-08  5:22   ` Santosh Shilimkar
2011-09-16 17:56   ` Kevin Hilman
2011-09-16 17:56     ` Kevin Hilman
2011-09-20 15:01     ` Santosh Shilimkar
2011-09-20 15:01       ` Santosh Shilimkar
2011-09-21 15:28       ` Santosh Shilimkar
2011-09-21 15:28         ` Santosh Shilimkar
2011-09-21 17:31         ` Kevin Hilman
2011-09-21 17:31           ` Kevin Hilman
2011-09-22  5:53           ` Shilimkar, Santosh
2011-09-22  5:53             ` Shilimkar, Santosh
2011-09-24  6:03 ` [PATCH 0/8] OMAP3/4: Misc fixes and clean-up Santosh Shilimkar
2011-09-24  6:03   ` Santosh Shilimkar
2011-09-24  6:31   ` Paul Walmsley
2011-09-24  6:31     ` Paul Walmsley
2011-09-24  6:35     ` Santosh Shilimkar
2011-09-24  6:35       ` Santosh Shilimkar
2011-09-24  7:36       ` Paul Walmsley
2011-09-24  7:36         ` Paul Walmsley
2011-09-24  7:46         ` Santosh Shilimkar
2011-09-24  7:46           ` Santosh Shilimkar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1315459327-3285-4-git-send-email-santosh.shilimkar@ti.com \
    --to=santosh.shilimkar@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=r.sricharan@ti.com \
    --cc=toddpoynor@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.