Index | Thread | Search

From:
Martin Pieuchot <mpi@openbsd.org>
Subject:
Use uao_dropswap()
To:
tech@openbsd.org
Date:
Sat, 6 Apr 2024 13:24:06 +0200

Download raw body.

Thread
  • Martin Pieuchot:

    Use uao_dropswap()

Call uao_dropswap() instead of rerolling it.  ok?

Index: uvm/uvm_aobj.c
===================================================================
RCS file: /cvs/src/sys/uvm/uvm_aobj.c,v
diff -u -p -r1.108 uvm_aobj.c
--- uvm/uvm_aobj.c	13 May 2023 09:24:59 -0000	1.108
+++ uvm/uvm_aobj.c	6 Apr 2024 11:21:15 -0000
@@ -1398,7 +1398,7 @@ uao_pagein_page(struct uvm_aobj *aobj, i
 {
 	struct uvm_object *uobj = &aobj->u_obj;
 	struct vm_page *pg;
-	int rv, slot, npages;
+	int rv, npages;
 
 	pg = NULL;
 	npages = 1;
@@ -1429,8 +1429,7 @@ uao_pagein_page(struct uvm_aobj *aobj, i
 	 * ok, we've got the page now.
 	 * mark it as dirty, clear its swslot and un-busy it.
 	 */
-	slot = uao_set_swslot(&aobj->u_obj, pageidx, 0);
-	uvm_swap_free(slot, 1);
+	uao_dropswap(&aobj->u_obj, pageidx);
 	atomic_clearbits_int(&pg->pg_flags, PG_BUSY|PG_CLEAN|PG_FAKE);
 	UVM_PAGE_OWN(pg, NULL);