svn commit: r348785 - in head/sys: amd64/amd64 arm/arm arm/nvidia/drm2 compat/linuxkpi/common/src dev/drm2/ttm dev/ti dev/xen/gntdev i386/i386 mips/mips riscv/riscv vm

Mark Johnston markj at FreeBSD.org
Fri Jun 7 18:23:33 UTC 2019


Author: markj
Date: Fri Jun  7 18:23:29 2019
New Revision: 348785
URL: https://svnweb.freebsd.org/changeset/base/348785

Log:
  Replace uses of vm_page_unwire(m, PQ_NONE) with vm_page_unwire_noq(m).
  
  These calls are not the same in general: the former will dequeue the
  page if it is enqueued, while the latter will just leave it alone.  But,
  all existing uses of the former apply to unmanaged pages, which are
  never enqueued in the first place.  No functional change intended.
  
  Reviewed by:	kib
  MFC after:	1 week
  Sponsored by:	Netflix
  Differential Revision:	https://reviews.freebsd.org/D20470

Modified:
  head/sys/amd64/amd64/pmap.c
  head/sys/arm/arm/pmap-v6.c
  head/sys/arm/nvidia/drm2/tegra_bo.c
  head/sys/compat/linuxkpi/common/src/linux_page.c
  head/sys/dev/drm2/ttm/ttm_page_alloc.c
  head/sys/dev/ti/if_ti.c
  head/sys/dev/xen/gntdev/gntdev.c
  head/sys/i386/i386/pmap.c
  head/sys/mips/mips/pmap.c
  head/sys/riscv/riscv/pmap.c
  head/sys/vm/uma_core.c
  head/sys/vm/vm_glue.c
  head/sys/vm/vm_kern.c

Modified: head/sys/amd64/amd64/pmap.c
==============================================================================
--- head/sys/amd64/amd64/pmap.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/amd64/amd64/pmap.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -4081,7 +4081,7 @@ free_pv_chunk(struct pv_chunk *pc)
 	/* entire chunk is free, return it */
 	m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc));
 	dump_drop_page(m->phys_addr);
-	vm_page_unwire(m, PQ_NONE);
+	vm_page_unwire_noq(m);
 	vm_page_free(m);
 }
 

Modified: head/sys/arm/arm/pmap-v6.c
==============================================================================
--- head/sys/arm/arm/pmap-v6.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/arm/arm/pmap-v6.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -2973,7 +2973,7 @@ free_pv_chunk(struct pv_chunk *pc)
 	/* entire chunk is free, return it */
 	m = PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)pc));
 	pmap_qremove((vm_offset_t)pc, 1);
-	vm_page_unwire(m, PQ_NONE);
+	vm_page_unwire_noq(m);
 	vm_page_free(m);
 	pmap_pte2list_free(&pv_vafree, (vm_offset_t)pc);
 }

Modified: head/sys/arm/nvidia/drm2/tegra_bo.c
==============================================================================
--- head/sys/arm/nvidia/drm2/tegra_bo.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/arm/nvidia/drm2/tegra_bo.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -67,7 +67,7 @@ tegra_bo_destruct(struct tegra_bo *bo)
 		cdev_pager_free_page(bo->cdev_pager, m);
 		vm_page_lock(m);
 		m->flags &= ~PG_FICTITIOUS;
-		vm_page_unwire(m, PQ_NONE);
+		vm_page_unwire_noq(m);
 		vm_page_free(m);
 		vm_page_unlock(m);
 	}

Modified: head/sys/compat/linuxkpi/common/src/linux_page.c
==============================================================================
--- head/sys/compat/linuxkpi/common/src/linux_page.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/compat/linuxkpi/common/src/linux_page.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -317,7 +317,7 @@ linux_shmem_read_mapping_page_gfp(vm_object_t obj, int
 			rv = vm_pager_get_pages(obj, &page, 1, NULL, NULL);
 			if (rv != VM_PAGER_OK) {
 				vm_page_lock(page);
-				vm_page_unwire(page, PQ_NONE);
+				vm_page_unwire_noq(page);
 				vm_page_free(page);
 				vm_page_unlock(page);
 				VM_OBJECT_WUNLOCK(obj);

Modified: head/sys/dev/drm2/ttm/ttm_page_alloc.c
==============================================================================
--- head/sys/dev/drm2/ttm/ttm_page_alloc.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/dev/drm2/ttm/ttm_page_alloc.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -137,7 +137,7 @@ ttm_vm_page_free(vm_page_t m)
 	KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("ttm got unmanaged %p", m));
 	m->flags &= ~PG_FICTITIOUS;
 	m->oflags |= VPO_UNMANAGED;
-	vm_page_unwire(m, PQ_NONE);
+	vm_page_unwire_noq(m);
 	vm_page_free(m);
 }
 

Modified: head/sys/dev/ti/if_ti.c
==============================================================================
--- head/sys/dev/ti/if_ti.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/dev/ti/if_ti.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -1623,7 +1623,7 @@ ti_newbuf_jumbo(struct ti_softc *sc, int idx, struct m
 			}
 			sf[i] = sf_buf_alloc(frame, SFB_NOWAIT);
 			if (sf[i] == NULL) {
-				vm_page_unwire(frame, PQ_NONE);
+				vm_page_unwire_noq(frame);
 				vm_page_free(frame);
 				device_printf(sc->ti_dev, "buffer allocation "
 				    "failed -- packet dropped!\n");

Modified: head/sys/dev/xen/gntdev/gntdev.c
==============================================================================
--- head/sys/dev/xen/gntdev/gntdev.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/dev/xen/gntdev/gntdev.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -278,7 +278,7 @@ gref_list_dtor(struct cleanup_data_struct *cleanup_dat
 					continue;
 				gnttab_free_grant_reference(gref->gref_id);
 			}
-			vm_page_unwire(gref->page, PQ_NONE);
+			vm_page_unwire_noq(gref->page);
 			vm_page_free(gref->page);
 			gref->page = NULL;
 		}

Modified: head/sys/i386/i386/pmap.c
==============================================================================
--- head/sys/i386/i386/pmap.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/i386/i386/pmap.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -2465,7 +2465,7 @@ free_pv_chunk(struct pv_chunk *pc)
 	/* entire chunk is free, return it */
 	m = PHYS_TO_VM_PAGE(pmap_kextract((vm_offset_t)pc));
 	pmap_qremove((vm_offset_t)pc, 1);
-	vm_page_unwire(m, PQ_NONE);
+	vm_page_unwire_noq(m);
 	vm_page_free(m);
 	pmap_ptelist_free(&pv_vafree, (vm_offset_t)pc);
 }

Modified: head/sys/mips/mips/pmap.c
==============================================================================
--- head/sys/mips/mips/pmap.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/mips/mips/pmap.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -1591,7 +1591,7 @@ free_pv_chunk(struct pv_chunk *pc)
 	/* entire chunk is free, return it */
 	m = PHYS_TO_VM_PAGE(MIPS_DIRECT_TO_PHYS((vm_offset_t)pc));
 	dump_drop_page(m->phys_addr);
-	vm_page_unwire(m, PQ_NONE);
+	vm_page_unwire_noq(m);
 	vm_page_free(m);
 }
 

Modified: head/sys/riscv/riscv/pmap.c
==============================================================================
--- head/sys/riscv/riscv/pmap.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/riscv/riscv/pmap.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -1648,7 +1648,7 @@ free_pv_chunk(struct pv_chunk *pc)
 	/* entire chunk is free, return it */
 	m = PHYS_TO_VM_PAGE(DMAP_TO_PHYS((vm_offset_t)pc));
 	dump_drop_page(m->phys_addr);
-	vm_page_unwire(m, PQ_NONE);
+	vm_page_unwire_noq(m);
 	vm_page_free(m);
 }
 

Modified: head/sys/vm/uma_core.c
==============================================================================
--- head/sys/vm/uma_core.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/vm/uma_core.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -1279,9 +1279,9 @@ pcpu_page_alloc(uma_zone_t zone, vm_size_t bytes, int 
 		zkva += PAGE_SIZE;
 	}
 	return ((void*)addr);
- fail:
+fail:
 	TAILQ_FOREACH_SAFE(p, &alloctail, listq, p_next) {
-		vm_page_unwire(p, PQ_NONE);
+		vm_page_unwire_noq(p);
 		vm_page_free(p);
 	}
 	return (NULL);
@@ -1331,7 +1331,7 @@ noobj_alloc(uma_zone_t zone, vm_size_t bytes, int doma
 		 * exit.
 		 */
 		TAILQ_FOREACH_SAFE(p, &alloctail, listq, p_next) {
-			vm_page_unwire(p, PQ_NONE);
+			vm_page_unwire_noq(p);
 			vm_page_free(p); 
 		}
 		return (NULL);
@@ -1392,7 +1392,7 @@ pcpu_page_free(void *mem, vm_size_t size, uint8_t flag
 	for (curva = sva; curva < sva + size; curva += PAGE_SIZE) {
 		paddr = pmap_kextract(curva);
 		m = PHYS_TO_VM_PAGE(paddr);
-		vm_page_unwire(m, PQ_NONE);
+		vm_page_unwire_noq(m);
 		vm_page_free(m);
 	}
 	pmap_qremove(sva, size >> PAGE_SHIFT);

Modified: head/sys/vm/vm_glue.c
==============================================================================
--- head/sys/vm/vm_glue.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/vm/vm_glue.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -408,7 +408,7 @@ vm_thread_stack_dispose(vm_object_t ksobj, vm_offset_t
 		if (m == NULL)
 			panic("vm_thread_dispose: kstack already missing?");
 		vm_page_lock(m);
-		vm_page_unwire(m, PQ_NONE);
+		vm_page_unwire_noq(m);
 		vm_page_free(m);
 		vm_page_unlock(m);
 	}

Modified: head/sys/vm/vm_kern.c
==============================================================================
--- head/sys/vm/vm_kern.c	Fri Jun  7 18:01:29 2019	(r348784)
+++ head/sys/vm/vm_kern.c	Fri Jun  7 18:23:29 2019	(r348785)
@@ -586,7 +586,7 @@ _kmem_unback(vm_object_t object, vm_offset_t addr, vm_
 #endif
 	for (; offset < end; offset += PAGE_SIZE, m = next) {
 		next = vm_page_next(m);
-		vm_page_unwire(m, PQ_NONE);
+		vm_page_unwire_noq(m);
 		vm_page_free(m);
 	}
 	VM_OBJECT_WUNLOCK(object);


More information about the svn-src-head mailing list