powerpc: trivial context refresh

Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
diff --git a/queue/powerpc-iommu-Stop-using-current-in-mm_iommu_xxx.patch b/queue/powerpc-iommu-Stop-using-current-in-mm_iommu_xxx.patch
index ce195ed..e91d765 100644
--- a/queue/powerpc-iommu-Stop-using-current-in-mm_iommu_xxx.patch
+++ b/queue/powerpc-iommu-Stop-using-current-in-mm_iommu_xxx.patch
@@ -1,4 +1,4 @@
-From d7baee6901b34c4895eb78efdbf13a49079d7404 Mon Sep 17 00:00:00 2001
+From 379e1ebb34144d05b1332d4028b595a4ddad3d30 Mon Sep 17 00:00:00 2001
 From: Alexey Kardashevskiy <aik@ozlabs.ru>
 Date: Wed, 30 Nov 2016 17:52:00 +1100
 Subject: [PATCH] powerpc/iommu: Stop using @current in mm_iommu_xxx
@@ -23,15 +23,16 @@
 Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
 Acked-by: Alex Williamson <alex.williamson@redhat.com>
 Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
 
 diff --git a/arch/powerpc/include/asm/mmu_context.h b/arch/powerpc/include/asm/mmu_context.h
-index 424844bc2a57..b9e3f0aca261 100644
+index 31deb7d813e8..b85cc7bd1c03 100644
 --- a/arch/powerpc/include/asm/mmu_context.h
 +++ b/arch/powerpc/include/asm/mmu_context.h
-@@ -19,16 +19,18 @@ extern void destroy_context(struct mm_struct *mm);
+@@ -18,16 +18,18 @@ extern void destroy_context(struct mm_struct *mm);
+ #ifdef CONFIG_SPAPR_TCE_IOMMU
  struct mm_iommu_table_group_mem_t;
  
- extern int isolate_lru_page(struct page *page);	/* from internal.h */
 -extern bool mm_iommu_preregistered(void);
 -extern long mm_iommu_get(unsigned long ua, unsigned long entries,
 +extern bool mm_iommu_preregistered(struct mm_struct *mm);
@@ -55,10 +56,10 @@
  		unsigned long ua, unsigned long *hpa);
  extern long mm_iommu_mapped_inc(struct mm_iommu_table_group_mem_t *mem);
 diff --git a/arch/powerpc/mm/mmu_context_iommu.c b/arch/powerpc/mm/mmu_context_iommu.c
-index ad2e575fd418..4c6db09e77ad 100644
+index 699cd80f4e39..a0b6c34e7c04 100644
 --- a/arch/powerpc/mm/mmu_context_iommu.c
 +++ b/arch/powerpc/mm/mmu_context_iommu.c
-@@ -56,7 +56,7 @@ static long mm_iommu_adjust_locked_vm(struct mm_struct *mm,
+@@ -53,7 +53,7 @@ static long mm_iommu_adjust_locked_vm(struct mm_struct *mm,
  	}
  
  	pr_debug("[%d] RLIMIT_MEMLOCK HASH64 %c%ld %ld/%ld\n",
@@ -67,7 +68,7 @@
  			incr ? '+' : '-',
  			npages << PAGE_SHIFT,
  			mm->locked_vm << PAGE_SHIFT,
-@@ -66,12 +66,9 @@ static long mm_iommu_adjust_locked_vm(struct mm_struct *mm,
+@@ -63,28 +63,22 @@ static long mm_iommu_adjust_locked_vm(struct mm_struct *mm,
  	return ret;
  }
  
@@ -82,10 +83,6 @@
  }
  EXPORT_SYMBOL_GPL(mm_iommu_preregistered);
  
-@@ -124,19 +121,16 @@ static int mm_iommu_move_page_from_cma(struct page *page)
- 	return 0;
- }
- 
 -long mm_iommu_get(unsigned long ua, unsigned long entries,
 +long mm_iommu_get(struct mm_struct *mm, unsigned long ua, unsigned long entries,
  		struct mm_iommu_table_group_mem_t **pmem)
@@ -104,7 +101,7 @@
  			next) {
  		if ((mem->ua == ua) && (mem->entries == entries)) {
  			++mem->used;
-@@ -154,7 +148,7 @@ long mm_iommu_get(unsigned long ua, unsigned long entries,
+@@ -102,7 +96,7 @@ long mm_iommu_get(unsigned long ua, unsigned long entries,
  
  	}
  
@@ -113,7 +110,7 @@
  	if (ret)
  		goto unlock_exit;
  
-@@ -215,11 +209,11 @@ populate:
+@@ -142,11 +136,11 @@ long mm_iommu_get(unsigned long ua, unsigned long entries,
  	mem->entries = entries;
  	*pmem = mem;
  
@@ -127,7 +124,7 @@
  
  	mutex_unlock(&mem_list_mutex);
  
-@@ -264,17 +258,13 @@ static void mm_iommu_free(struct rcu_head *head)
+@@ -191,17 +185,13 @@ static void mm_iommu_free(struct rcu_head *head)
  static void mm_iommu_release(struct mm_iommu_table_group_mem_t *mem)
  {
  	list_del_rcu(&mem->next);
@@ -146,7 +143,7 @@
  	mutex_lock(&mem_list_mutex);
  
  	if (mem->used == 0) {
-@@ -297,6 +287,8 @@ long mm_iommu_put(struct mm_iommu_table_group_mem_t *mem)
+@@ -224,6 +214,8 @@ long mm_iommu_put(struct mm_iommu_table_group_mem_t *mem)
  	/* @mapped became 0 so now mappings are disabled, release the region */
  	mm_iommu_release(mem);
  
@@ -155,7 +152,7 @@
  unlock_exit:
  	mutex_unlock(&mem_list_mutex);
  
-@@ -304,14 +296,12 @@ unlock_exit:
+@@ -231,14 +223,12 @@ unlock_exit:
  }
  EXPORT_SYMBOL_GPL(mm_iommu_put);
  
@@ -173,7 +170,7 @@
  		if ((mem->ua <= ua) &&
  				(ua + size <= mem->ua +
  				 (mem->entries << PAGE_SHIFT))) {
-@@ -324,14 +314,12 @@ struct mm_iommu_table_group_mem_t *mm_iommu_lookup(unsigned long ua,
+@@ -251,14 +241,12 @@ struct mm_iommu_table_group_mem_t *mm_iommu_lookup(unsigned long ua,
  }
  EXPORT_SYMBOL_GPL(mm_iommu_lookup);
  
@@ -192,7 +189,7 @@
  			ret = mem;
  			break;
 diff --git a/drivers/vfio/vfio_iommu_spapr_tce.c b/drivers/vfio/vfio_iommu_spapr_tce.c
-index 80378ddadc5c..d0c38b201267 100644
+index 2a6e13892397..4efd2b20c35c 100644
 --- a/drivers/vfio/vfio_iommu_spapr_tce.c
 +++ b/drivers/vfio/vfio_iommu_spapr_tce.c
 @@ -107,14 +107,17 @@ static long tce_iommu_unregister_pages(struct tce_container *container,