OpenVZ Forum


Home » Mailing lists » Devel » [PATCH 3/3] SPARC: Handle request_irq() failure
[PATCH 3/3] SPARC: Handle request_irq() failure [message #10684] Mon, 26 February 2007 16:09 Go to next message
Dmitriy Monakhov is currently offline  Dmitriy Monakhov
Messages: 52
Registered: October 2006
Member
Signed-off-by: Monakhov Dmitriy <dmonakhov@openvz.org>
---
drivers/sbus/char/uctrl.c | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/drivers/sbus/char/uctrl.c b/drivers/sbus/char/uctrl.c
index 45cf5bc..6b96aa3 100644
--- a/drivers/sbus/char/uctrl.c
+++ b/drivers/sbus/char/uctrl.c
@@ -364,6 +364,7 @@ static int __init ts102_uctrl_init(void)
struct linux_prom_irqs tmp_irq[2];
unsigned int vaddr[2] = { 0, 0 };
int tmpnode, uctrlnode = prom_getchild(prom_root_node);
+ int err;

tmpnode = prom_searchsiblings(uctrlnode, "obio");

@@ -389,7 +390,12 @@ static int __init ts102_uctrl_init(void)
if(!driver->irq)
driver->irq = tmp_irq[0].pri;

- request_irq(driver->irq, uctrl_interrupt, 0, "uctrl", driver);
+ err = request_irq(driver->irq, uctrl_interrupt, 0, "uctrl", driver);
+ if (err) {
+ printk(KERN_ERR "%s: unable to request irq %d\n",
+ __FUNCTION__, driver->irq);
+ return -EBUSY;
+ }

if (misc_register(&uctrl_dev)) {
printk("%s: unable to get misc minor %d\n",
--
1.5.0.1
Re: [PATCH 3/3] SPARC: Handle request_irq() failure [message #10697 is a reply to message #10684] Mon, 26 February 2007 17:44 Go to previous message
davem is currently offline  davem
Messages: 463
Registered: February 2006
Senior Member
From: Monakhov Dmitriy <dmonakhov@openvz.org>
Date: Mon, 26 Feb 2007 19:09:27 +0300

> Signed-off-by: Monakhov Dmitriy <dmonakhov@openvz.org>
...
> @@ -389,7 +390,12 @@ static int __init ts102_uctrl_init(void)
> if(!driver->irq)
> driver->irq = tmp_irq[0].pri;
>
> - request_irq(driver->irq, uctrl_interrupt, 0, "uctrl", driver);
> + err = request_irq(driver->irq, uctrl_interrupt, 0, "uctrl", driver);
> + if (err) {
> + printk(KERN_ERR "%s: unable to request irq %d\n",
> + __FUNCTION__, driver->irq);
> + return -EBUSY;
> + }
>

Why not return the error code that request_irq() gave us?

That's how I'll fix this bug.
Previous Topic: [PATCH 1/3] IRQ: add __must_check to request_irq
Next Topic: [PATCH 2/3] pcmcia: Handle request_irq() failure while opening device
Goto Forum:
  


Current Time: Mon Sep 08 00:20:32 GMT 2025

Total time taken to generate the page: 0.16594 seconds