Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1322729
| From | "Michael S. Tsirkin" <mst@redhat.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v5 00/10] virtio DMA API, yet again |
| Date | 2016-01-31 21:20 +0100 |
| Message-ID | <qX6Dw-5f-5@gated-at.bofh.it> (permalink) |
| References | <qW78C-4lQ-5@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Thu, Jan 28, 2016 at 06:31:13PM -0800, Andy Lutomirski wrote: > This switches virtio to use the DMA API on Xen and if requested by > module option. > > This fixes virtio on Xen, and it should break anything because it's > off by default on everything except Xen PV on x86. > > To the Xen people: is this okay? If it doesn't work on other Xen > variants (PVH? HVM?), can you submit follow-up patches to fix it? > > To everyone else: we've waffled on this for way too long. I think > we should to get DMA API implementation in with a conservative > policy like this rather than waiting until we achieve perfection. > I'm tired of carrying these patches around. I agree, thanks for working on this! > Michael, if these survive review, can you stage these in your tree? Yes, I'll stage everything except 10/10. I'd rather not maintain a module option like this, things work for now and I'm working on a clean solution for things like dpdk within guest. So far I saw some comments on 9/10. > Can you also take a look at tools/virtio? I probably broke it, but I > couldn't get it to build without these patches either, so I'm stuck. Will do. > Changes from v4: > - Bake vring_use_dma_api in from the beginning. > - Automatically enable only on Xen. > - Add module parameter. > - Add s390 and alpha DMA API implementations. > - Rebase to 4.5-rc1. > > Changes from v3: > - More big-endian fixes. > - Added better virtio-ring APIs that handle allocation and use them in > virtio-mmio and virtio-pci. > - Switch to Michael's virtio-net patch. > > Changes from v2: > - Fix vring_mapping_error incorrect argument > > Changes from v1: > - Fix an endian conversion error causing a BUG to hit. > - Fix a DMA ordering issue (swiotlb=force works now). > - Minor cleanups. > > Andy Lutomirski (7): > vring: Introduce vring_use_dma_api() > virtio_ring: Support DMA APIs > virtio: Add improved queue allocation API > virtio_mmio: Use the DMA API if enabled > virtio_pci: Use the DMA API if enabled > vring: Use the DMA API on Xen > vring: Add a module parameter to force-enable the DMA API > > Christian Borntraeger (3): > dma: Provide simple noop dma ops > alpha/dma: use common noop dma ops > s390/dma: Allow per device dma ops > > arch/alpha/kernel/pci-noop.c | 46 +--- > arch/s390/Kconfig | 6 +- > arch/s390/include/asm/device.h | 6 +- > arch/s390/include/asm/dma-mapping.h | 6 +- > arch/s390/pci/pci.c | 1 + > arch/s390/pci/pci_dma.c | 4 +- > drivers/virtio/Kconfig | 2 +- > drivers/virtio/virtio_mmio.c | 67 ++---- > drivers/virtio/virtio_pci_common.h | 6 - > drivers/virtio/virtio_pci_legacy.c | 42 ++-- > drivers/virtio/virtio_pci_modern.c | 61 ++---- > drivers/virtio/virtio_ring.c | 412 ++++++++++++++++++++++++++++++------ > include/linux/dma-mapping.h | 2 + > include/linux/virtio.h | 23 +- > include/linux/virtio_ring.h | 35 +++ > lib/Makefile | 1 + > lib/dma-noop.c | 75 +++++++ > tools/virtio/linux/dma-mapping.h | 17 ++ > 18 files changed, 568 insertions(+), 244 deletions(-) > create mode 100644 lib/dma-noop.c > create mode 100644 tools/virtio/linux/dma-mapping.h > > -- > 2.5.0
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v5 00/10] virtio DMA API, yet again Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
[PATCH v5 01/10] dma: Provide simple noop dma ops Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
[PATCH v5 07/10] virtio_mmio: Use the DMA API if enabled Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
[PATCH v5 08/10] virtio_pci: Use the DMA API if enabled Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
[PATCH v5 06/10] virtio: Add improved queue allocation API Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
[PATCH v5 04/10] vring: Introduce vring_use_dma_api() Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
Re: [PATCH v5 04/10] vring: Introduce vring_use_dma_api() David Woodhouse <dwmw2@infradead.org> - 2016-02-01 12:30 +0100
Re: [PATCH v5 04/10] vring: Introduce vring_use_dma_api() "Michael S. Tsirkin" <mst@redhat.com> - 2016-02-01 14:30 +0100
Re: [PATCH v5 04/10] vring: Introduce vring_use_dma_api() Andy Lutomirski <luto@amacapital.net> - 2016-02-01 16:50 +0100
Re: [PATCH v5 04/10] vring: Introduce vring_use_dma_api() David Woodhouse <dwmw2@infradead.org> - 2016-02-01 17:20 +0100
[PATCH v5 03/10] s390/dma: Allow per device dma ops Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
[PATCH v5 02/10] alpha/dma: use common noop dma ops Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
[PATCH v5 05/10] virtio_ring: Support DMA APIs Andy Lutomirski <luto@kernel.org> - 2016-01-29 03:40 +0100
Re: [PATCH v5 00/10] virtio DMA API, yet again David Woodhouse <dwmw2@infradead.org> - 2016-01-29 12:10 +0100
Re: [PATCH v5 00/10] virtio DMA API, yet again Christoph Hellwig <hch@lst.de> - 2016-01-31 20:10 +0100
Re: [PATCH v5 00/10] virtio DMA API, yet again "Michael S. Tsirkin" <mst@redhat.com> - 2016-01-31 21:20 +0100
Re: [PATCH v5 00/10] virtio DMA API, yet again Andy Lutomirski <luto@amacapital.net> - 2016-01-31 21:20 +0100
Re: [Xen-devel] [PATCH v5 00/10] virtio DMA API, yet again Wei Liu <wei.liu2@citrix.com> - 2016-02-01 12:10 +0100
Re: [Xen-devel] [PATCH v5 00/10] virtio DMA API, yet again Andy Lutomirski <luto@amacapital.net> - 2016-02-01 19:10 +0100
Re: [Xen-devel] [PATCH v5 00/10] virtio DMA API, yet again Wei Liu <wei.liu2@citrix.com> - 2016-02-01 22:30 +0100
csiph-web