Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

I/OAT: cancel watchdog before dma remove

Channel watchdog should be canceled before the rest of dma remove stuff.

Signed-off-by: Maciej Sosnowski <maciej.sosnowski@intel.com>
Signed-off-by: Shannon Nelson <shannon.nelson@intel.com>
Acked-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>

authored by

Maciej Sosnowski and committed by
Dan Williams
2b8a6bf8 8b794b14

+3 -4
+3 -4
drivers/dma/ioat_dma.c
··· 1705 1705 struct dma_chan *chan, *_chan; 1706 1706 struct ioat_dma_chan *ioat_chan; 1707 1707 1708 + if (device->version != IOAT_VER_3_0) 1709 + cancel_delayed_work(&device->work); 1710 + 1708 1711 ioat_dma_remove_interrupts(device); 1709 1712 1710 1713 dma_async_device_unregister(&device->common); ··· 1718 1715 iounmap(device->reg_base); 1719 1716 pci_release_regions(device->pdev); 1720 1717 pci_disable_device(device->pdev); 1721 - 1722 - if (device->version != IOAT_VER_3_0) { 1723 - cancel_delayed_work(&device->work); 1724 - } 1725 1718 1726 1719 list_for_each_entry_safe(chan, _chan, 1727 1720 &device->common.channels, device_node) {