Use the ethernet device name when requesting the irq because the
irqbalance daemon looks for the name when deciding policy.
Better to play along with this dubious heuristic.

Signed-off-by: Stephen Hemminger <[EMAIL PROTECTED]>

---
 drivers/net/sky2.c |   37 ++++++++++++++++---------------------
 1 file changed, 16 insertions(+), 21 deletions(-)

--- netdev-2.6.orig/drivers/net/sky2.c  2006-09-25 15:23:13.000000000 -0700
+++ netdev-2.6/drivers/net/sky2.c       2006-09-25 15:23:16.000000000 -0700
@@ -3349,6 +3349,14 @@
        if (!dev)
                goto err_out_free_pci;
 
+       if (!disable_msi && pci_enable_msi(pdev) == 0) {
+               err = sky2_test_msi(hw);
+               if (err == -EOPNOTSUPP)
+                       pci_disable_msi(pdev);
+               else if (err)
+                       goto err_out_free_netdev;
+       }
+
        err = register_netdev(dev);
        if (err) {
                printk(KERN_ERR PFX "%s: cannot register net device\n",
@@ -3356,6 +3364,14 @@
                goto err_out_free_netdev;
        }
 
+       err = request_irq(pdev->irq,  sky2_intr, IRQF_SHARED, dev->name, hw);
+       if (err) {
+               printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
+                      pci_name(pdev), pdev->irq);
+               goto err_out_unregister;
+       }
+       sky2_write32(hw, B0_IMSK, Y2_IS_BASE);
+
        sky2_show_addr(dev);
 
        if (hw->ports > 1 && (dev1 = sky2_init_netdev(hw, 1, using_dac))) {
@@ -3370,23 +3386,6 @@
                }
        }
 
-       if (!disable_msi && pci_enable_msi(pdev) == 0) {
-               err = sky2_test_msi(hw);
-               if (err == -EOPNOTSUPP)
-                       pci_disable_msi(pdev);
-               else if (err)
-                       goto err_out_unregister;
-       }
-
-       err = request_irq(pdev->irq,  sky2_intr, IRQF_SHARED, DRV_NAME, hw);
-       if (err) {
-               printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
-                      pci_name(pdev), pdev->irq);
-               goto err_out_unregister;
-       }
-
-       sky2_write32(hw, B0_IMSK, Y2_IS_BASE);
-
        setup_timer(&hw->idle_timer, sky2_idle, (unsigned long) hw);
        sky2_idle_start(hw);
 
@@ -3396,10 +3395,6 @@
 
 err_out_unregister:
        pci_disable_msi(pdev);
-       if (dev1) {
-               unregister_netdev(dev1);
-               free_netdev(dev1);
-       }
        unregister_netdev(dev);
 err_out_free_netdev:
        free_netdev(dev);
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to