• [PATCH] iommu/iova: Don't try to copy anchor nodes

    From Robin Murphy@21:1/5 to All on Mon Oct 2 13:00:02 2017
    Anchor nodes are not reserved IOVAs in the way that copy_reserved_iova()
    cares about - while the failure from reserve_iova() is benign since the
    target domain will already have its own anchor, we still don't want to
    be triggering spurious warnings.

    Reported-by: kernel test robot <fengguang.wu@intel.com>
    Signed-off-by: Robin Murphy <robin.murphy@arm.com>
    ---
    drivers/iommu/iova.c | 3 +++
    1 file changed, 3 insertions(+)

    diff --git a/drivers/iommu/iova.c b/drivers/iommu/iova.c
    index bd854ca9fa80..c258ba84ee62 100644
    --- a/drivers/iommu/iova.c
    +++ b/drivers/iommu/iova.c
    @@ -705,6 +705,9 @@ copy_reserved_iova(struct iova_domain *from, struct iova_domain *to)
    struct iova *iova = rb_entry(node, struct iova, node);
    struct iova *new_iova;

    + if (iova->pfn_lo == IOVA_ANCHOR)
    + continue;
    +
    new_iova = reserve_iova(to, iova->pfn_lo, iova->pfn_hi);
    if (!new_iova)
    printk(KERN_ERR "Reserve iova range %lx@%lx failed\n", --
    2.13.4.dirty

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)