Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753869AbbEMGVa (ORCPT ); Wed, 13 May 2015 02:21:30 -0400 Received: from e23smtp06.au.ibm.com ([202.81.31.148]:46704 "EHLO e23smtp06.au.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751190AbbEMGV2 (ORCPT ); Wed, 13 May 2015 02:21:28 -0400 Date: Wed, 13 May 2015 16:20:25 +1000 From: Gavin Shan To: Alexey Kardashevskiy Cc: linuxppc-dev@lists.ozlabs.org, David Gibson , Benjamin Herrenschmidt , Paul Mackerras , Alex Williamson , Gavin Shan , Wei Yang , linux-kernel@vger.kernel.org Subject: Re: [PATCH kernel v10 10/34] vfio: powerpc/spapr: Disable DMA mappings on disabled container Message-ID: <20150513062025.GA8256@gwshan> Reply-To: Gavin Shan References: <1431358763-24371-1-git-send-email-aik@ozlabs.ru> <1431358763-24371-11-git-send-email-aik@ozlabs.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1431358763-24371-11-git-send-email-aik@ozlabs.ru> User-Agent: Mutt/1.5.23 (2014-03-12) X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15051306-0021-0000-0000-00000139C0D4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1661 Lines: 55 On Tue, May 12, 2015 at 01:38:59AM +1000, Alexey Kardashevskiy wrote: >At the moment DMA map/unmap requests are handled irrespective to >the container's state. This allows the user space to pin memory which >it might not be allowed to pin. > >This adds checks to MAP/UNMAP that the container is enabled, otherwise >-EPERM is returned. > >Signed-off-by: Alexey Kardashevskiy >[aw: for the vfio related changes] >Acked-by: Alex Williamson >Reviewed-by: David Gibson Reviewed-by: Gavin Shan Thanks, Gavin >--- > drivers/vfio/vfio_iommu_spapr_tce.c | 6 ++++++ > 1 file changed, 6 insertions(+) > >diff --git a/drivers/vfio/vfio_iommu_spapr_tce.c b/drivers/vfio/vfio_iommu_spapr_tce.c >index 40583f9..e21479c 100644 >--- a/drivers/vfio/vfio_iommu_spapr_tce.c >+++ b/drivers/vfio/vfio_iommu_spapr_tce.c >@@ -318,6 +318,9 @@ static long tce_iommu_ioctl(void *iommu_data, > struct iommu_table *tbl = container->tbl; > unsigned long tce; > >+ if (!container->enabled) >+ return -EPERM; >+ > if (!tbl) > return -ENXIO; > >@@ -362,6 +365,9 @@ static long tce_iommu_ioctl(void *iommu_data, > struct vfio_iommu_type1_dma_unmap param; > struct iommu_table *tbl = container->tbl; > >+ if (!container->enabled) >+ return -EPERM; >+ > if (WARN_ON(!tbl)) > return -ENXIO; > >-- >2.4.0.rc3.8.gfb3e7d5 > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/