ioatdma: Push pending transactions to hardware more frequently
authorChris Leech <christopher.leech@intel.com>
Thu, 8 Mar 2007 17:57:33 +0000 (09:57 -0800)
committerDan Williams <dan.j.williams@intel.com>
Wed, 11 Jul 2007 22:39:03 +0000 (15:39 -0700)
Every 20 descriptors turns out to be to few append commands with
newer/faster CPUs.  Pushing every 4 still cuts down on MMIO writes to an
acceptable level without letting the DMA engine run out of work.

Signed-off-by: Chris Leech <christopher.leech@intel.com>
drivers/dma/ioatdma.c

index 850014139556c853a4c4018fb81fdd69d2f50ff0..4e6afd75203483b5bee367f8050e23987089fc6f 100644 (file)
@@ -310,7 +310,7 @@ static dma_cookie_t do_ioat_dma_memcpy(struct ioat_dma_chan *ioat_chan,
        list_splice_init(&new_chain, ioat_chan->used_desc.prev);
 
        ioat_chan->pending += desc_count;
-       if (ioat_chan->pending >= 20) {
+       if (ioat_chan->pending >= 4) {
                append = 1;
                ioat_chan->pending = 0;
        }
@@ -818,7 +818,7 @@ static void __devexit ioat_remove(struct pci_dev *pdev)
 }
 
 /* MODULE API */
-MODULE_VERSION("1.7");
+MODULE_VERSION("1.9");
 MODULE_LICENSE("GPL");
 MODULE_AUTHOR("Intel Corporation");