git: 32f9c9699a5a - main - Reset kvo_laundry to prevent it being cumulative

From: Allan Jude <allanjude_at_FreeBSD.org>
Date: Wed, 25 Jun 2025 13:39:29 UTC
The branch main has been updated by allanjude:

URL: https://cgit.FreeBSD.org/src/commit/?id=32f9c9699a5a56ef8ef1da8e2974a8b34e2b84f5

commit 32f9c9699a5a56ef8ef1da8e2974a8b34e2b84f5
Author:     Allan Jude <allanjude@FreeBSD.org>
AuthorDate: 2025-06-25 13:38:50 +0000
Commit:     Allan Jude <allanjude@FreeBSD.org>
CommitDate: 2025-06-25 13:39:15 +0000

    Reset kvo_laundry to prevent it being cumulative
    
    `sysctl vm.objects`, used by `vmstat -o` was not resetting the
    laundry counter to 0 inside the loop, causing it to show the sum of
    the laundry count for all previous objects instead of only the laundry
    count for the current object.
    
    Fixes:  a86373bc93ee1c850943e8585d0d426479378145
    Reviewed by:    markj
    Sponsored by:   Klara, Inc.
    Sponsored by:   Modirum MDPay
    Differential Revision:  https://reviews.freebsd.org/D50907
---
 sys/vm/vm_object.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c
index f0769102aca1..6d9ea8bf9d93 100644
--- a/sys/vm/vm_object.c
+++ b/sys/vm/vm_object.c
@@ -2529,6 +2529,7 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only)
 		kvo->kvo_memattr = obj->memattr;
 		kvo->kvo_active = 0;
 		kvo->kvo_inactive = 0;
+		kvo->kvo_laundry = 0;
 		kvo->kvo_flags = 0;
 		if (!swap_only) {
 			vm_page_iter_init(&pages, obj);