Merge branch 'fixes' into next
authorMichael Ellerman <mpe@ellerman.id.au>
Mon, 13 Aug 2018 05:59:06 +0000 (15:59 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 13 Aug 2018 05:59:06 +0000 (15:59 +1000)
Merge our fixes branch from the 4.18 cycle to resolve some minor
conflicts.

1  2 
arch/powerpc/Makefile
arch/powerpc/kernel/idle_book3s.S
arch/powerpc/kvm/book3s_64_vio.c
arch/powerpc/kvm/book3s_64_vio_hv.c
arch/powerpc/xmon/xmon.c
drivers/vfio/vfio_iommu_spapr_tce.c

Simple merge
Simple merge
Simple merge
index 757976b3f6407db5febe919b039c0fc064b7246c,5b298f5a1a14ee65ed0be2ad3a85c692ef9b5e8a..506a4d40045883026a9046919d23e695f35bc219
@@@ -275,9 -279,14 +275,10 @@@ static long kvmppc_rm_tce_iommu_do_map(
        if (!mem)
                return H_TOO_HARD;
  
-       if (WARN_ON_ONCE_RM(mm_iommu_ua_to_hpa_rm(mem, ua, &hpa)))
+       if (WARN_ON_ONCE_RM(mm_iommu_ua_to_hpa_rm(mem, ua, tbl->it_page_shift,
+                       &hpa)))
                return H_HARDWARE;
  
 -      pua = (void *) vmalloc_to_phys(pua);
 -      if (WARN_ON_ONCE_RM(!pua))
 -              return H_HARDWARE;
 -
        if (WARN_ON_ONCE_RM(mm_iommu_mapped_inc(mem)))
                return H_CLOSED;
  
Simple merge
index 11a4c194d6e3848aba558c1e13e57c4b18380988,7cd63b0c1a4623edd236458cbf047cd472fa4b02..96721b154454f617689e56ccc029eac9181e4b85
@@@ -449,11 -487,11 +449,11 @@@ static void tce_iommu_unuse_page_v2(str
        if (!pua)
                return;
  
 -      ret = tce_iommu_prereg_ua_to_hpa(container, *pua, tbl->it_page_shift,
 -                      &hpa, &mem);
 +      ret = tce_iommu_prereg_ua_to_hpa(container, be64_to_cpu(*pua),
-                       IOMMU_PAGE_SIZE(tbl), &hpa, &mem);
++                      tbl->it_page_shift, &hpa, &mem);
        if (ret)
 -              pr_debug("%s: tce %lx at #%lx was not cached, ret=%d\n",
 -                              __func__, *pua, entry, ret);
 +              pr_debug("%s: tce %llx at #%lx was not cached, ret=%d\n",
 +                              __func__, be64_to_cpu(*pua), entry, ret);
        if (mem)
                mm_iommu_mapped_dec(mem);
  
@@@ -561,12 -599,19 +561,12 @@@ static long tce_iommu_build_v2(struct t
        unsigned long hpa;
        enum dma_data_direction dirtmp;
  
 -      if (!tbl->it_userspace) {
 -              ret = tce_iommu_userspace_view_alloc(tbl, container->mm);
 -              if (ret)
 -                      return ret;
 -      }
 -
        for (i = 0; i < pages; ++i) {
                struct mm_iommu_table_group_mem_t *mem = NULL;
 -              unsigned long *pua = IOMMU_TABLE_USERSPACE_ENTRY(tbl,
 -                              entry + i);
 +              __be64 *pua = IOMMU_TABLE_USERSPACE_ENTRY(tbl, entry + i);
  
                ret = tce_iommu_prereg_ua_to_hpa(container,
-                               tce, IOMMU_PAGE_SIZE(tbl), &hpa, &mem);
+                               tce, tbl->it_page_shift, &hpa, &mem);
                if (ret)
                        break;