On Fri, May 29, 2015 at 06:44:29PM +1000, Alexey Kardashevskiy wrote: >At the moment iommu_free_table() only releases memory if >the table was initialized for the platform code use, i.e. it had >it_map initialized (which purpose is to track DMA memory space use). > >With dynamic DMA windows, we will need to be able to release >iommu_table even if it was used for VFIO in which case it_map is NULL >so does the patch. > >Signed-off-by: Alexey Kardashevskiy <aik@xxxxxxxxx> Reviewed-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx> Thanks, Gavin >--- >Changes: >v11: >* fixed parameter checks >--- > arch/powerpc/kernel/iommu.c | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > >diff --git a/arch/powerpc/kernel/iommu.c b/arch/powerpc/kernel/iommu.c >index 3d47eb3..73eb39a 100644 >--- a/arch/powerpc/kernel/iommu.c >+++ b/arch/powerpc/kernel/iommu.c >@@ -713,9 +713,11 @@ void iommu_free_table(struct iommu_table *tbl, const char *node_name) > unsigned long bitmap_sz; > unsigned int order; > >- if (!tbl || !tbl->it_map) { >- printk(KERN_ERR "%s: expected TCE map for %s\n", __func__, >- node_name); >+ if (!tbl) >+ return; >+ >+ if (!tbl->it_map) { >+ kfree(tbl); > return; > } > >-- >2.4.0.rc3.8.gfb3e7d5 > -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html