Index | Thread | Search

From:
Mark Kettenis <mark.kettenis@xs4all.nl>
Subject:
Re: Use uao_dropswap()
To:
Martin Pieuchot <mpi@openbsd.org>
Cc:
tech@openbsd.org
Date:
Sat, 06 Apr 2024 15:27:36 +0200

Download raw body.

Thread
  • Martin Pieuchot:

    Use uao_dropswap()

    • Mark Kettenis:

      Use uao_dropswap()

> Date: Sat, 6 Apr 2024 13:24:06 +0200
> From: Martin Pieuchot <mpi@openbsd.org>
> 
> Call uao_dropswap() instead of rerolling it.  ok?

ok kettenis@

> 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);
>  
> 
>