[PATCH] ixgb/e: fix IRQx nobody cared for shared irq with INTx solve ixgb on pci-x and mptsas on pci-x. sometime mptsas get confused. same to [PATCH] e1000: fix IRQx nobody cared for shared irq with INTx http://lkml.org/lkml/2008/3/29/103 Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Index: linux-2.6/drivers/net/ixgb/ixgb_main.c =================================================================== --- linux-2.6.orig/drivers/net/ixgb/ixgb_main.c +++ linux-2.6/drivers/net/ixgb/ixgb_main.c @@ -290,6 +290,11 @@ ixgb_up(struct ixgb_adapter *adapter) #endif ixgb_irq_enable(adapter); + if (!adapter->have_msi) { + /* enable INTx if not using MSI */ + pci_intx(adapter->pdev, 1); + } + return 0; } @@ -368,6 +373,8 @@ ixgb_probe(struct pci_dev *pdev, int i; int err; + /* disable INTx at first */ + pci_intx(pdev, 0); if((err = pci_enable_device(pdev))) return err; Index: linux-2.6/drivers/net/ixgbe/ixgbe_main.c =================================================================== --- linux-2.6.orig/drivers/net/ixgbe/ixgbe_main.c +++ linux-2.6/drivers/net/ixgbe/ixgbe_main.c @@ -1988,6 +1988,12 @@ try_intr_reinit: if (err) goto err_up; + if (!(adapter->flags & + (IXGBE_FLAG_MSI_ENABLED | IXGBE_FLAG_MSIX_ENABLED))) { + /* enable INTx if not using MSI/MSIX */ + pci_intx(adapter->pdev, 1); + } + return 0; err_up: @@ -2627,6 +2633,8 @@ static int __devinit ixgbe_probe(struct u16 link_status, link_speed, link_width; u32 part_num; + /* disable INTx at first */ + pci_intx(pdev, 0); err = pci_enable_device(pdev); if (err) return err; --
| Jens Axboe | Re: [BUG] New Kernel Bugs |
| Faik Uygur | Re: Linux 2.6.21-rc1 |
| Ingo Molnar | [patch 02/13] syslets: add syslet.h include file, user API/ABI definitions |
| Greg Kroah-Hartman | [PATCH 001/196] Chinese: Add the known_regression URI to the HOWTO |
git: | |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Jarek Poplawski | Re: Data corruption issue with splice() on 2.6.27.10 |
| Steven Rostedt | Re: -rt scheduling: wakeup bug? |
