svn commit: r351571 - stable/12/sys/vm

Mark Johnston markj at FreeBSD.org
Wed Aug 28 16:16:36 UTC 2019


Author: markj
Date: Wed Aug 28 16:16:35 2019
New Revision: 351571
URL: https://svnweb.freebsd.org/changeset/base/351571

Log:
  MFC r351331:
  Don't requeue active pages in vm_swapout_object_deactivate_pages().

Modified:
  stable/12/sys/vm/vm_swapout.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/sys/vm/vm_swapout.c
==============================================================================
--- stable/12/sys/vm/vm_swapout.c	Wed Aug 28 16:16:14 2019	(r351570)
+++ stable/12/sys/vm/vm_swapout.c	Wed Aug 28 16:16:35 2019	(r351571)
@@ -227,20 +227,22 @@ vm_swapout_object_deactivate_pages(pmap_t pmap, vm_obj
 				vm_page_activate(p);
 				p->act_count += act_delta;
 			} else if (vm_page_active(p)) {
+				/*
+				 * The page daemon does not requeue pages
+				 * after modifying their activation count.
+				 */
 				if (act_delta == 0) {
 					p->act_count -= min(p->act_count,
 					    ACT_DECLINE);
 					if (!remove_mode && p->act_count == 0) {
 						pmap_remove_all(p);
 						vm_page_deactivate(p);
-					} else
-						vm_page_requeue(p);
+					}
 				} else {
 					vm_page_activate(p);
 					if (p->act_count < ACT_MAX -
 					    ACT_ADVANCE)
 						p->act_count += ACT_ADVANCE;
-					vm_page_requeue(p);
 				}
 			} else if (vm_page_inactive(p))
 				pmap_remove_all(p);


More information about the svn-src-all mailing list