Re: [PATCH 2/5] swiotlb: Add is_swiotlb_active() function
From: "Michael S. Tsirkin" <mst@redhat.com>
Date: 2019-01-28 17:19:09
Also in:
linux-iommu, lkml
On Thu, Jan 24, 2019 at 04:00:00PM +0100, Joerg Roedel wrote:
On Thu, Jan 24, 2019 at 09:41:07AM +0100, Christoph Hellwig wrote:quoted
On Thu, Jan 24, 2019 at 09:29:23AM +0100, Joerg Roedel wrote:quoted
quoted
As I've just introduced and fixed a bug in this area in the current cycle - I don't think no_iotlb_memory is what your want (and maybe not useful at all): if the arch valls swiotlb_exit after previously initializing a buffer it won't be set. You probably want to check for non-zero io_tlb_start and/or io_tlb_end.Okay, but that requires that I also set io_tlb_start and friends back to zero in the failure path of swiotlb_init(). Otherwise it could be left non-zero in case swiotlb_init_with_tbl() returns an error.Indeed, and we'll need to do that anyway as otherwise the dma mapping path might cause problems similar to the one when swiotlb_exit is called that I fixed.Turns out the the error path in swiotlb_init() is redundant because it will never be executed. If the function returns it will always return 0 because in case of failure it will just panic (through memblock_alloc). I'll clean that up in a separate patch-set. There are more users of that function and all of them panic when the function fails. Joerg
OK so are you going to post a new version then? Time's running out for 5.0. This isn't a regression so maybe we should just defer it all to 5.1. -- MST