mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-06 02:50:43 +00:00
nvme-apple: don't limit DMA segement size
NVMe uses PRPs for data transfers and has no specific limit for a single
DMA segement. Limiting the size will cause problems because the block
layer assumes PRP-ish devices using a virt boundary mask don't have a
segment limit. And while this is true, we also really need to tell the
DMA mapping layer about it, otherwise dma-debug will trip over it.
Fixes: 5bd2927ace
("nvme-apple: Add initial Apple SoC NVMe driver")
Suggested-by: Sven Peter <sven@svenpeter.dev>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
[hch: rewrote the commit message based on the PCIe commit]
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Eric Curtin <ecurtin@redhat.com>
Reviewed-by: Sven Peter <sven@svenpeter.dev>
This commit is contained in:
parent
ac9b57d4e1
commit
d622f8477a
1 changed files with 2 additions and 0 deletions
|
@ -1039,6 +1039,8 @@ static void apple_nvme_reset_work(struct work_struct *work)
|
||||||
dma_max_mapping_size(anv->dev) >> 9);
|
dma_max_mapping_size(anv->dev) >> 9);
|
||||||
anv->ctrl.max_segments = NVME_MAX_SEGS;
|
anv->ctrl.max_segments = NVME_MAX_SEGS;
|
||||||
|
|
||||||
|
dma_set_max_seg_size(anv->dev, 0xffffffff);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Enable NVMMU and linear submission queues.
|
* Enable NVMMU and linear submission queues.
|
||||||
* While we could keep those disabled and pretend this is slightly
|
* While we could keep those disabled and pretend this is slightly
|
||||||
|
|
Loading…
Reference in a new issue