[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Tue, 2 Feb 2021 12:53:02 +0100
From: Greg KH <gregkh@...uxfoundation.org>
To: Jianxiong Gao <jxgao@...gle.com>
Cc: erdemaktas@...gle.com, marcorr@...gle.com, hch@....de,
m.szyprowski@...sung.com, robin.murphy@....com,
saravanak@...gle.com, heikki.krogerus@...ux.intel.com,
rafael.j.wysocki@...el.com, andriy.shevchenko@...ux.intel.com,
dan.j.williams@...el.com, bgolaszewski@...libre.com,
jroedel@...e.de, iommu@...ts.linux-foundation.org,
konrad.wilk@...cle.com, kbusch@...nel.org, axboe@...com,
sagi@...mberg.me, linux-nvme@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH V2 0/3] SWIOTLB: Preserve swiotlb map offset when needed.
On Mon, Feb 01, 2021 at 10:30:14AM -0800, Jianxiong Gao wrote:
> NVMe driver and other applications may depend on the data offset
> to operate correctly. Currently when unaligned data is mapped via
> SWIOTLB, the data is mapped as slab aligned with the SWIOTLB. This
> patch adds an option to make sure the mapped data preserves its
> offset of the orginal addrss.
>
> Without the patch when creating xfs formatted disk on NVMe backends,
> with swiotlb=force in kernel boot option, creates the following error:
> meta-data=/dev/nvme2n1 isize=512 agcount=4, agsize=131072 blks
> = sectsz=512 attr=2, projid32bit=1
> = crc=1 finobt=1, sparse=0, rmapbt=0, refl
> ink=0
> data = bsize=4096 blocks=524288, imaxpct=25
> = sunit=0 swidth=0 blks
> naming =version 2 bsize=4096 ascii-ci=0 ftype=1
> log =internal log bsize=4096 blocks=2560, version=2
> = sectsz=512 sunit=0 blks, lazy-count=1
> realtime =none extsz=4096 blocks=0, rtextents=0
> mkfs.xfs: pwrite failed: Input/output error
>
> Jianxiong Gao (3):
> Adding page_offset_mask to device_dma_parameters
> Add swiotlb offset preserving mapping when
> dma_dma_parameters->page_offset_mask is non zero.
> Adding device_dma_parameters->offset_preserve_mask to NVMe driver.
>
> drivers/nvme/host/pci.c | 4 ++++
> include/linux/device.h | 1 +
> include/linux/dma-mapping.h | 17 +++++++++++++++++
> kernel/dma/swiotlb.c | 16 +++++++++++++++-
> 4 files changed, 37 insertions(+), 1 deletion(-)
>
> --
> 2.27.0
>
You forgot to mention somewhere, what changed from v1 to v2 :(
Powered by blists - more mailing lists