[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c9b5900b-8212-35c1-c358-46158d34b253@arm.com>
Date: Thu, 3 Jun 2021 12:00:46 +0100
From: Robin Murphy <robin.murphy@....com>
To: Sven Peter <sven@...npeter.dev>,
Srinath Mannam <srinath.mannam@...adcom.com>,
Joerg Roedel <joro@...tes.org>,
Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
Bjorn Helgaas <bhelgaas@...gle.com>, poza@...eaurora.org
Cc: iommu <iommu@...ts.linux-foundation.org>,
bcm-kernel-feedback-list@...adcom.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v3] iommu/dma: Fix IOVA reserve dma ranges
On 2021-06-02 21:18, Sven Peter wrote:
> Hi,
>
> I just ran into the exact same issue while working on the M1 DART IOMMU driver
> and it was fixed by this commit. Thanks!
>
> Would be great if this could be picked up.
Oops, apparently I was happy enough with this 9 months ago to forget
about it, so if it helps,
Reviewed-by: Robin Murphy <robin.murphy@....com>
> Tested-by: Sven Peter <sven@...npeter.dev>
>
>
> Best,
>
>
> Sven
>
>
> On Mon, Sep 14, 2020, at 09:23, Srinath Mannam via iommu wrote:
>> Fix IOVA reserve failure in the case when address of first memory region
>> listed in dma-ranges is equal to 0x0.
>>
>> Fixes: aadad097cd46f ("iommu/dma: Reserve IOVA for PCIe inaccessible
>> DMA address")
>> Signed-off-by: Srinath Mannam <srinath.mannam@...adcom.com>
>> ---
>> Changes from v2:
>> Modify error message with useful information based on Bjorn's
>> comments.
>>
>> Changes from v1:
>> Removed unnecessary changes based on Robin's review comments.
>>
>> drivers/iommu/dma-iommu.c | 6 ++++--
>> 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/iommu/dma-iommu.c b/drivers/iommu/dma-iommu.c
>> index 5141d49a046b..5b9791f35c5e 100644
>> --- a/drivers/iommu/dma-iommu.c
>> +++ b/drivers/iommu/dma-iommu.c
>> @@ -217,9 +217,11 @@ static int iova_reserve_pci_windows(struct pci_dev *dev,
>> lo = iova_pfn(iovad, start);
>> hi = iova_pfn(iovad, end);
>> reserve_iova(iovad, lo, hi);
>> - } else {
>> + } else if (end < start) {
>> /* dma_ranges list should be sorted */
>> - dev_err(&dev->dev, "Failed to reserve IOVA\n");
>> + dev_err(&dev->dev,
>> + "Failed to reserve IOVA [%#010llx-%#010llx]\n",
>> + start, end);
>> return -EINVAL;
>> }
>>
>> --
>> 2.17.1
>>
>> _______________________________________________
>> iommu mailing list
>> iommu@...ts.linux-foundation.org
>> https://lists.linuxfoundation.org/mailman/listinfo/iommu
>>
>>
Powered by blists - more mailing lists