[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <200607271950.03370.m.kozlowski@tuxland.pl>
Date:	Thu, 27 Jul 2006 19:50:03 +0200
From:	Mariusz Kozlowski <m.kozlowski@...land.pl>
To:	linux-kernel@...r.kernel.org
Subject: request_irq() return value
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@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
Powered by blists - more mailing lists
 
