| Date | Wed, 15 Apr 2015 14:03:25 +1000 | From | David Gibson <> | Subject | Re: [PATCH kernel v8 03/31] vfio: powerpc/spapr: Check that IOMMU page is fully contained by system page |
| |
On Fri, Apr 10, 2015 at 04:30:45PM +1000, Alexey Kardashevskiy wrote: > This checks that the TCE table page size is not bigger that the size of > a page we just pinned and going to put its physical address to the table. > > Otherwise the hardware gets unwanted access to physical memory between > the end of the actual page and the end of the aligned up TCE page. > > Since compound_order() and compound_head() work correctly on non-huge > pages, there is no need for additional check whether the page is huge. > > Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Only thing I'm not sure about is...
> + if (!tce_page_is_contained(page, tbl->it_page_shift)) { > + ret = -EPERM; > + break;
.. whether EPERM is the right error code.
-- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson [unhandled content-type:application/pgp-signature] |