[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190207115917.20535-1-joro@8bytes.org>
Date: Thu, 7 Feb 2019 12:59:12 +0100
From: Joerg Roedel <joro@...tes.org>
To: "Michael S . Tsirkin" <mst@...hat.com>,
Jason Wang <jasowang@...hat.com>,
Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>,
Christoph Hellwig <hch@....de>
Cc: Jens Axboe <axboe@...nel.dk>,
virtualization@...ts.linux-foundation.org,
linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
iommu@...ts.linux-foundation.org, jfehlig@...e.com,
jon.grimm@....com, brijesh.singh@....com, joro@...tes.org,
jroedel@...e.de, Thomas.Lendacky@....com
Subject: [PATCH v7 0/5] Fix virtio-blk issue with SWIOTLB
Hi,
here is the next version of this patch-set. Previous
versions can be found here:
V1: https://lore.kernel.org/lkml/20190110134433.15672-1-joro@8bytes.org/
V2: https://lore.kernel.org/lkml/20190115132257.6426-1-joro@8bytes.org/
V3: https://lore.kernel.org/lkml/20190123163049.24863-1-joro@8bytes.org/
V4: https://lore.kernel.org/lkml/20190129084342.26030-1-joro@8bytes.org/
V5: https://lore.kernel.org/lkml/20190130164007.26497-1-joro@8bytes.org/
V6: https://lore.kernel.org/lkml/20190131163403.11363-1-joro@8bytes.org/
The problem solved here is a limitation of the SWIOTLB implementation,
which does not support allocations larger than 256kb. When the
virtio-blk driver tries to read/write a block larger than that, the
allocation of the dma-handle fails and an IO error is reported.
Changes to v6 are:
- Fix build errors with CONFIG_SWIOTLB=n
Please review.
Thanks,
Joerg
Joerg Roedel (5):
swiotlb: Introduce swiotlb_max_mapping_size()
swiotlb: Add is_swiotlb_active() function
dma: Introduce dma_max_mapping_size()
virtio: Introduce virtio_max_dma_size()
virtio-blk: Consider virtio_max_dma_size() for maximum segment size
Documentation/DMA-API.txt | 8 ++++++++
drivers/block/virtio_blk.c | 10 ++++++----
drivers/virtio/virtio_ring.c | 11 +++++++++++
include/linux/dma-mapping.h | 8 ++++++++
include/linux/swiotlb.h | 11 +++++++++++
include/linux/virtio.h | 2 ++
kernel/dma/direct.c | 11 +++++++++++
kernel/dma/mapping.c | 14 ++++++++++++++
kernel/dma/swiotlb.c | 14 ++++++++++++++
9 files changed, 85 insertions(+), 4 deletions(-)
--
2.17.1
Powered by blists - more mailing lists