Message ID | alpine.OSX.2.00.1004171258330.358@localhost |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
From: Finn Thain <fthain@telegraphics.com.au> Date: Sat, 17 Apr 2010 13:16:04 +1000 (EST) > > Change an error return code from -EAGAIN to -EBUSY since the former is > misleading. > > Nubus slots are geographically addressed and their irqs are equally > inflexible. -EAGAIN is misleading because retrying will not help fix > whatever bug it was that made the irq unavailable. request_irq() itself returns an appropriate error code, so the correct change is to do: err = request_irq( ... ); if (err) { ... and return 'err'. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Wed, 21 Apr 2010, David Miller wrote: > From: Finn Thain <fthain@telegraphics.com.au> > Date: Sat, 17 Apr 2010 13:16:04 +1000 (EST) > > > > > Change an error return code from -EAGAIN to -EBUSY since the former is > > misleading. > > > > Nubus slots are geographically addressed and their irqs are equally > > inflexible. -EAGAIN is misleading because retrying will not help fix > > whatever bug it was that made the irq unavailable. > > request_irq() itself returns an appropriate error code, so the > correct change is to do: > > err = request_irq( ... ); > if (err) { > ... > > and return 'err'. OK. I'll send a new patch once 2.6.34 is out and I have time to test this and some other patches. Finn -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
--- a/drivers/net/mac8390.c 2010-04-16 13:31:04.000000000 +1000 +++ b/drivers/net/mac8390.c 2010-04-16 23:50:39.000000000 +1000 @@ -554,7 +554,7 @@ case MAC8390_APPLE: switch (mac8390_testio(dev->mem_start)) { case ACCESS_UNKNOWN: - pr_info("Don't know how to access card memory!\n"); + pr_err("Don't know how to access card memory!\n"); return -ENODEV; break; @@ -643,8 +643,8 @@ { __ei_open(dev); if (request_irq(dev->irq, __ei_interrupt, 0, "8390 Ethernet", dev)) { - pr_info("%s: unable to get IRQ %d.\n", dev->name, dev->irq); - return -EAGAIN; + pr_err("%s: unable to get IRQ %d.\n", dev->name, dev->irq); + return -EBUSY; } return 0; } @@ -660,7 +660,7 @@ { ei_status.txing = 0; if (ei_debug > 1) - pr_info("reset not supported\n"); + printk(KERN_DEBUG pr_fmt("reset not supported\n")); return; } @@ -668,7 +668,7 @@ { unsigned char *target = nubus_slot_addr(IRQ2SLOT(dev->irq)); if (ei_debug > 1) - pr_info("Need to reset the NS8390 t=%lu...", jiffies); + printk(KERN_DEBUG pr_fmt("Need to reset the NS8390 t=%lu..."), jiffies); ei_status.txing = 0; target[0xC0000] = 0; if (ei_debug > 1)
Change an error return code from -EAGAIN to -EBUSY since the former is misleading. Nubus slots are geographically addressed and their irqs are equally inflexible. -EAGAIN is misleading because retrying will not help fix whatever bug it was that made the irq unavailable. Also promote the log message. Likewise some other KERN_INFO log messages. Signed-off-by: Finn Thain <fthain@telegraphics.com.au> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html