b43: Remove reset after fatal DMA error
authorLarry Finger <Larry.Finger@lwfinger.net>
Wed, 9 Dec 2009 19:25:56 +0000 (13:25 -0600)
committerJohn W. Linville <linville@tuxdriver.com>
Thu, 10 Dec 2009 21:09:51 +0000 (16:09 -0500)
As shown in Kernel Bugzilla #14761, doing a controller restart after a
fatal DMA error does not accomplish anything other than consume the CPU
on an affected system. Accordingly, substitute a meaningful message for
the restart.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org> [2.6.32]
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/b43/main.c

index 077480c4916a774cd47f2361f0c96b9237c8fb8b..19b4eae47b594c95a389853a0dfb7ef67943b85b 100644 (file)
@@ -1784,7 +1784,10 @@ static void b43_do_interrupt_thread(struct b43_wldev *dev)
                               dma_reason[0], dma_reason[1],
                               dma_reason[2], dma_reason[3],
                               dma_reason[4], dma_reason[5]);
-                       b43_controller_restart(dev, "DMA error");
+                       b43err(dev->wl, "This device does not support DMA "
+                              "on your system. Please use PIO instead.\n");
+                       b43err(dev->wl, "CONFIG_B43_FORCE_PIO must be set in "
+                              "your kernel configuration.\n");
                        return;
                }
                if (merged_dma_reason & B43_DMAIRQ_NONFATALMASK) {