git: 9b392d07381e - stable/13 - sysctl vm.objects: yield if hog

From: Konstantin Belousov <kib_at_FreeBSD.org>
Date: Mon, 01 Nov 2021 00:45:59 UTC
The branch stable/13 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=9b392d07381e6129a1f5e6280ed5b603a3b4d3db

commit 9b392d07381e6129a1f5e6280ed5b603a3b4d3db
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2021-05-07 22:13:29 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2021-11-01 00:44:51 +0000

    sysctl vm.objects: yield if hog
    
    (cherry picked from commit 350fc36b4cf896cbfce657a6dab600b26367a34a)
---
 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 9462e8753afb..5bbe7faed50b 100644
--- a/sys/vm/vm_object.c
+++ b/sys/vm/vm_object.c
@@ -2585,6 +2585,7 @@ vm_object_list_handler(struct sysctl_req *req, bool swap_only)
 		kvo->kvo_structsize = roundup(kvo->kvo_structsize,
 		    sizeof(uint64_t));
 		error = SYSCTL_OUT(req, kvo, kvo->kvo_structsize);
+		maybe_yield();
 		mtx_lock(&vm_object_list_mtx);
 		if (error)
 			break;