[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181120092516.GC7270@lst.de>
Date: Tue, 20 Nov 2018 10:25:16 +0100
From: Christoph Hellwig <hch@....de>
To: John Stultz <john.stultz@...aro.org>
Cc: Christoph Hellwig <hch@....de>, Will Deacon <will.deacon@....com>,
Catalin Marinas <catalin.marinas@....com>,
Robin Murphy <robin.murphy@....com>,
Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>,
linux-arm-kernel <linux-arm-kernel@...ts.infradead.org>,
iommu@...ts.linux-foundation.org,
lkml <linux-kernel@...r.kernel.org>,
Valentin Schneider <valentin.schneider@....com>
Subject: Re: [PATCH 06/10] swiotlb: use swiotlb_map_page in
swiotlb_map_sg_attrs
On Mon, Nov 19, 2018 at 03:22:13PM -0800, John Stultz wrote:
> > + sg->dma_address = dma_addr;
> > sg_dma_len(sg) = sg->length;
> > }
>
> I know Robin has already replied with more detailed info, but just to
> close the loop as I'm finally home, applying this patch didn't seem to
> help with the IO hangs I'm seeing w/ HiKey960.
If Robins observation is right this should fix the problem for you:
diff --git a/include/linux/dma-direct.h b/include/linux/dma-direct.h
index bd73e7a91410..1833f0c1fba0 100644
--- a/include/linux/dma-direct.h
+++ b/include/linux/dma-direct.h
@@ -5,7 +5,7 @@
#include <linux/dma-mapping.h>
#include <linux/mem_encrypt.h>
-#define DIRECT_MAPPING_ERROR 0
+#define DIRECT_MAPPING_ERROR (~(dma_addr_t)0x0)
#ifdef CONFIG_ARCH_HAS_PHYS_TO_DMA
#include <asm/dma-direct.h>
Powered by blists - more mailing lists