Alexander Duyck
07bd34db29
ioat: Do not enable DCA if tag map is invalid
...
I have encountered several systems that have an invalid tag map. This
invalid tag map results in only two tags being generated 0x1F which is
usually applied to the first core in a Hyper-threaded pair and 0x00 which
is applied to the second core in a Hyper-threaded pair. The net result of
all this is that DCA causes significant cache thrash because the 0x1F tag
will send traffic to the second socket, which the 0x00 tag will not DCA tag
the frame resulting in no benefit.
For now the best solution from the driver's perspective is to just disable
DCA if the tag map is invalid. The correct solution for this would be to
have the BIOS on affected systems updated so that the correct tags are
generated for a given APIC ID.
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Stephen Ko <stephen.s.ko@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2012-11-15 05:20:01 -08:00
..
ioat
ioat: Do not enable DCA if tag map is invalid
2012-11-15 05:20:01 -08:00
ipu
dma: ipu: remove the use of ipu_platform_data
2012-07-01 21:57:43 +08:00
ppc4xx
dma: fix comments
2012-09-01 08:57:12 -07:00
sh
dmaengine: shdma: restore partial transfer calculation
2012-08-01 13:48:52 +09:00
amba-pl08x.c
drivers/dma/amba-pl08x.c: fix error return code
2012-08-22 09:51:04 +05:30
at_hdmac.c
Sound updates for 3.7-rc1
2012-10-09 07:07:14 +09:00
at_hdmac_regs.h
ARM: at91: move platform_data definitions
2012-09-14 11:16:40 +02:00
coh901318.c
dma: coh901318: use devm allocation
2012-06-14 08:42:26 +05:30
coh901318_lli.c
dmaengine: Use sg_dma_address instead of sg_phys
2012-05-11 12:04:38 +05:30
coh901318_lli.h
dmaengine.c
drivers/dma/dmaengine.c: lower the priority of 'failed to get' dma channel message
2012-10-06 03:04:36 +09:00
dmaengine.h
dmatest.c
dw_dmac.c
dw_dmac: fix a regression in dwc_prep_dma_memcpy
2012-10-02 13:18:00 +05:30
dw_dmac_regs.h
drivers/dma/dw_dmac: make driver's endianness configurable
2012-10-25 14:37:53 -07:00
edma.c
dmaengine: add TI EDMA DMA engine driver
2012-09-01 06:14:02 +05:30
ep93xx_dma.c
Sound updates for 3.7-rc1
2012-10-09 07:07:14 +09:00
fsldma.c
dma: fix comments
2012-09-01 08:57:12 -07:00
fsldma.h
imx-dma.c
dmaengine: imx-dma: fix missing unlock on error in imxdma_xfer_desc()
2012-10-24 08:52:45 +05:30
imx-sdma.c
Sound updates for 3.7-rc1
2012-10-09 07:07:14 +09:00
intel_mid_dma.c
treewide: fix comment/printk/variable typos
2012-09-01 10:33:05 -07:00
intel_mid_dma_regs.h
dma: fix comments
2012-09-01 08:57:12 -07:00
iop-adma.c
dmaengine-fixes for 3.4-rc3
2012-04-10 15:30:16 -07:00
iovlock.c
Kconfig
drivers/dma/dw_dmac: make driver's endianness configurable
2012-10-25 14:37:53 -07:00
Makefile
dmaengine: mmp-pdma support
2012-09-14 08:14:07 +05:30
mmp_pdma.c
dmaengine: mmp-pdma support
2012-09-14 08:14:07 +05:30
mmp_tdma.c
Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma
2012-10-10 11:10:41 +09:00
mpc512x_dma.c
mv_xor.c
ARM: orion: move platform_data definitions
2012-09-19 17:42:17 +02:00
mv_xor.h
ARM: Orion: XOR: Add support for clk
2012-05-08 16:34:02 -07:00
mxs-dma.c
Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma
2012-10-10 11:10:41 +09:00
omap-dma.c
Sound updates for 3.7-rc1
2012-10-09 07:07:14 +09:00
pch_dma.c
dmaengine: Use sg_dma_address instead of sg_phys
2012-05-11 12:04:38 +05:30
pl330.c
Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma
2012-10-10 11:10:41 +09:00
sa11x0-dma.c
dmaengine: Pass flags via device_prep_dma_cyclic() callback
2012-09-22 11:12:45 -04:00
sirf-dma.c
dmaengine: sirf: fix a typo in moving running dma_desc to active queue
2012-10-24 16:30:38 +05:30
ste_dma40.c
Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma
2012-10-10 11:10:41 +09:00
ste_dma40_ll.c
ste_dma40_ll.h
dma: fix comments
2012-09-01 08:57:12 -07:00
tegra20-apb-dma.c
Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma
2012-10-10 11:10:41 +09:00
timb_dma.c
TODO
txx9dmac.c
txx9dmac.h
virt-dma.c
dmaengine: virt-dma: add support for cyclic DMA periodic callbacks
2012-07-01 14:15:23 +01:00
virt-dma.h
dmaengine: virt-dma: add support for cyclic DMA periodic callbacks
2012-07-01 14:15:23 +01:00