pseries/iommu: Fix iteration in DDW TCE clearrange
PATCH 1/1 pseries/iommu: Fix iteration in DDW TCE clearrange
tce_clearrange_multi_pSeriesLP is attempting to iterate over all TCEs in a given range. However, is it not advancing the dma_offset value passed to plpar_tce_stuff via the next value. This prevents DLPAR from completing, because TCEs are still present at slot isolation time.
Signed-off-by Nishanth Aravamudan <[email protected]>
arch/powerpc/platforms/pseries/iommu.c +1 -0
@@ -382,6 +382,7 @@ static int tce_clearrange_multi_pSeriesLP(unsigned long start_pfn, rc =plpar_tce_stuff ((u64 )be32_to_cpu (maprange->liobn), dma_offset,0 , limit); + next += limit * tce_size; num_tce -= limit; }while (num_tce >0 && !rc);