Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Aug 2019 16:16:35 +0000 (UTC)
From:      Mark Johnston <markj@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org
Subject:   svn commit: r351571 - stable/12/sys/vm
Message-ID:  <201908281616.x7SGGZ0o020656@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
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);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201908281616.x7SGGZ0o020656>