Messages in this thread | | | From | Mariusz Kozlowski <> | Subject | request_irq() return value | Date | Thu, 27 Jul 2006 19:50:03 +0200 |
| |
Hello,
I'm looking at the source code of different drivers and wondering about request_irq() return value. It is used mostly in 'open' routine of struct net_device. If request_irq() fails some drivers return -EAGAIN, some -EBUSY and some the return value of request_irq(). Is this intentional? Sample drivers code:
8139cp.c: static int cp_open (struct net_device *dev) { ... rc = request_irq(dev->irq, cp_interrupt, SA_SHIRQ, dev->name, dev); if (rc) goto err_out_hw; ... err_out_hw: ... return rc; }
3c359.c: static int xl_open(struct net_device *dev){ ... if(request_irq(dev->irq, &xl_interrupt, SA_SHIRQ , "3c359", dev)) { return -EAGAIN; } ... }
Besides request_irq() is arch dependent so depending on arch it has different set of possible return values. So ... does the return value matter or I misunderstood something here?
Regards,
Mariusz - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |