From: John Feeney <jfeeney@redhat.com> Date: Tue, 21 Apr 2009 19:01:39 -0400 Subject: [misc] I/O AT: update existing files Message-id: 49EE5053.8020607@redhat.com O-Subject: [RHEL5.4 PATCH 2/8] Update I/O AT: existing files Bugzilla: 436048 RH-Acked-by: Prarit Bhargava <prarit@redhat.com> RH-Acked-by: John W. Linville <linville@redhat.com> bz436048 Update I/O AT code to upstream This patch changes to the existing drivers and drivers/dma files. Kconfig | 3 +++ Makefile | 2 ++ dma/Kconfig | 14 +------------- dma/dmaengine.c | 4 ++++ dma/ioatdma.c | 2 ++ 5 files changed, 12 insertions(+), 13 deletions(-) The commits to each file and any modifications are listed below. drivers/Kconfig Had to add dma_v3 entry which is not upstream c13c8260da3155f2cefb63b0d1b7dcdcb405c644 Leech 5/24/06 was in RHEL5 7589670f37736bcc119ebfbd69aafea6d585d1d4 Nelson 10/16/07 drivers/Makefile Had to add dma_v3 entry which is not upstream c13c8260da3155f2cefb63b0d1b7dcdcb405c644 Leech 5/24/06 was in RHEL5 7589670f37736bcc119ebfbd69aafea6d585d1d4 Nelson 10/16/07 drivers/dma/dmaengine.c Add MODULE_LICENSE not upstream drivers/dma/Kconfig Moved NET_DMA to dma_v3/Kconfig which is not upstream c13c8260da3155f2cefb63b0d1b7dcdcb405c644 Leech 5/24/06 was in RHEL5 drivers/dma/ioatdma.c Added printk change not upstream, but suggested by Intel. diff --git a/drivers/Kconfig b/drivers/Kconfig index 1a60e62..65b5d76 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -78,4 +78,7 @@ source "drivers/rtc/Kconfig" source "drivers/dma/Kconfig" +source "drivers/dca/Kconfig" + +source "drivers/dma_v3/Kconfig" endmenu diff --git a/drivers/Makefile b/drivers/Makefile index 7dbed7d..f1db29d 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -81,3 +81,5 @@ obj-$(CONFIG_SUPERH) += sh/ obj-$(CONFIG_GENERIC_TIME) += clocksource/ obj-$(CONFIG_DMA_ENGINE) += dma/ obj-$(CONFIG_VIRTIO) += virtio/ +obj-$(CONFIG_DMA_ENGINE_V3) += dma_v3/ +obj-$(CONFIG_DCA) += dca/ diff --git a/drivers/dma/Kconfig b/drivers/dma/Kconfig index 30d021d..3e8d3b6 100644 --- a/drivers/dma/Kconfig +++ b/drivers/dma/Kconfig @@ -5,23 +5,11 @@ menu "DMA Engine support" config DMA_ENGINE - bool "Support for DMA engines" + tristate "Support for DMA engines" ---help--- DMA engines offload copy operations from the CPU to dedicated hardware, allowing the copies to happen asynchronously. -comment "DMA Clients" - -config NET_DMA - bool "Network: TCP receive copy offload" - depends on DMA_ENGINE && NET - default y - ---help--- - This enables the use of DMA engines in the network stack to - offload receive copy-to-user operations, freeing CPU cycles. - Since this is the main user of the DMA engine, it should be enabled; - say Y here. - comment "DMA Devices" config INTEL_IOATDMA diff --git a/drivers/dma/dmaengine.c b/drivers/dma/dmaengine.c index 1527804..a2e05ff 100644 --- a/drivers/dma/dmaengine.c +++ b/drivers/dma/dmaengine.c @@ -410,3 +410,7 @@ EXPORT_SYMBOL(dma_async_memcpy_issue_pending); EXPORT_SYMBOL(dma_async_device_register); EXPORT_SYMBOL(dma_async_device_unregister); EXPORT_SYMBOL(dma_chan_cleanup); + +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Intel Corporation"); + diff --git a/drivers/dma/ioatdma.c b/drivers/dma/ioatdma.c index 2f30270..5be9073 100644 --- a/drivers/dma/ioatdma.c +++ b/drivers/dma/ioatdma.c @@ -832,6 +832,8 @@ MODULE_AUTHOR("Intel Corporation"); static int __init ioat_init_module(void) { + printk(KERN_ERR + "Intel I/O AT DMA Engine: to use I/O AT TCP receive copy offload on this kernel version load ioatdma_v3.ko module instead of ioatdma.ko\n"); /* it's currently unsafe to unload this module */ /* if forced, worst case is that rmmod hangs */ __unsafe(THIS_MODULE);