dejl4trM6cqvOfXtoYn0nnMtVaG1W6Dt 7UO9XQaDcuA5S1W11jroxYJf06boO568EwvTAO8YZ6WCs2a3aTU015cjo91R7A== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dWKdk0kTKzc3B for ; Wed, 17 Dec 2025 03:53:14 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 4355d by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 17 Dec 2025 03:53:14 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: bdfd695037a9 - main - swap_pager_seek_data(): improve assertions List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bdfd695037a95b076aeffd04ed9fdf042b6ce218 Auto-Submitted: auto-generated Date: Wed, 17 Dec 2025 03:53:14 +0000 Message-Id: <6942292a.4355d.5d66690d@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=bdfd695037a95b076aeffd04ed9fdf042b6ce218 commit bdfd695037a95b076aeffd04ed9fdf042b6ce218 Author: Konstantin Belousov AuthorDate: 2025-12-14 09:30:21 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-17 03:40:31 +0000 swap_pager_seek_data(): improve assertions Check that the passed object indeed has the swap type. Accept any kind of the object lock ownership, not only for read. Reviewed by: alc, markj Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D54219 --- sys/vm/swap_pager.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sys/vm/swap_pager.c b/sys/vm/swap_pager.c index 676e585a6b53..5e9a0ad94cb3 100644 --- a/sys/vm/swap_pager.c +++ b/sys/vm/swap_pager.c @@ -2460,7 +2460,8 @@ swap_pager_seek_data(vm_object_t object, vm_pindex_t pindex) vm_page_t m; vm_pindex_t swap_index; - VM_OBJECT_ASSERT_RLOCKED(object); + VM_OBJECT_ASSERT_LOCKED(object); + KASSERT((object->flags & OBJ_SWAP) != 0, ("non-swap obj %p", object)); vm_page_iter_init(&pages, object); m = vm_radix_iter_lookup_ge(&pages, pindex); if (m != NULL && pages.index == pindex && vm_page_any_valid(m))