From nobody Sat Jan 24 00:32:20 2026 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dybNN5c4jz6Q1g0 for ; Sat, 24 Jan 2026 00:32:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dybNN3qh5z4536 for ; Sat, 24 Jan 2026 00:32:20 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769214740; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZuV/e5gPjC2tpAbiue4XqUJFsYIKVth58NUJl4DeqrE=; b=AtTt82NZionXVe91tjGbHKGofi3qp4ZbwiS6eTDE0ltRhIyy4amvxOgsKZzF5gzCM+dgHc 8GMBjkl1Ttz0sF3Fe5w7Mv6iIVjQZf4I4OZPDMWbYb3/GX3X55zY8DMgBJ1Rf7TRboyfuP Q89usk7nTMRHpChONCocdd6GDH0ElaSnctzGse6Xu5ow5KA4O/Icm2pfm+t2DJOyMzD4JV s706uNKojyW/NLmvxyYr5rzjvMImWOUy7tPeXXWEVuk54lau7Z7nW4DRomJpRXQIroCu+t l17nhu46oK6OYX8e6LDU9eHBTV4YiAhT1MjhWPcC20fs5Iv6Cttg2BesHlJWUQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1769214740; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ZuV/e5gPjC2tpAbiue4XqUJFsYIKVth58NUJl4DeqrE=; b=UEzqtMtlX90Hyvwk+jaXYnHpE/kbboDxihZJILpqbS5VZ9nch3BCUL0kI/cuhLymukqmyn PBo2Pqs1YRcEm395MD1XZvEkvnAI6djTRBY8hDDcG/1onwSpaEaD6W/kHjvr1ihLpBHcLd DzarAur+P0ZupPOWnDxSb6CHD3SLAcwDBc5gHX0Zjsn1/aRi78gL3Eh6eI7aMCXQSu7ZxU RjgdCJ0p35O9iMWrwK0XGJRGR1NXSdwwM9qB5y2TRNEOscq7mEqtHRhw3ASj/J6j4E4vqF QUwKHHoMQK0BQU608zLRxx0Lc2vNF3mOvcwfZavsNtRGetyAe6dhDhsCISDstA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1769214740; a=rsa-sha256; cv=none; b=GXMWi+Gmt+hqiqOpHhihBjhXoEWS9d/3hXJznSOppXYHlDJxruBco4kn5qRmF5UOJW27na KjKbSTblpTeNiVKvirHNL7Qs2MLo+Ka80wgS+Sm9LZGUJq4DmPD5UDlo78mSAinRIKIH2J BwLVVeBxXDDQlseOaX/MK3vBl8WTzs1Bte9KWzA72Zefca4+TVrM7NKUQ2Y+ooj3iIZRiH 293sfn/gnr/I+ALMCR2mewjCK6UWx7CFlPug+ixwtESueeIBhsGVve495yLh6WyL2QlUjY 0oxFG99qyqs2SlV6apClqNlNuAEmF15tySYiba2QJeLCMJvjGpKTqZsrvYYqpA== 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 4dybNN2p7vzjL5 for ; Sat, 24 Jan 2026 00:32:20 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id b736 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Sat, 24 Jan 2026 00:32:20 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 1e1727a7d7bd - stable/15 - vm_object_coalesce(): do not account holes twice List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@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/stable/15 X-Git-Reftype: branch X-Git-Commit: 1e1727a7d7bdead736c221b0e4971bcba307fc94 Auto-Submitted: auto-generated Date: Sat, 24 Jan 2026 00:32:20 +0000 Message-Id: <69741314.b736.6c0a6f3c@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=1e1727a7d7bdead736c221b0e4971bcba307fc94 commit 1e1727a7d7bdead736c221b0e4971bcba307fc94 Author: Konstantin Belousov AuthorDate: 2025-11-27 21:53:24 +0000 Commit: Konstantin Belousov CommitDate: 2026-01-24 00:26:44 +0000 vm_object_coalesce(): do not account holes twice (cherry picked from commit 353ba3bf08fdef69b77e3e565435e50784a51412) --- sys/vm/vm_object.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/sys/vm/vm_object.c b/sys/vm/vm_object.c index 36edb279bbce..c216fdc01af1 100644 --- a/sys/vm/vm_object.c +++ b/sys/vm/vm_object.c @@ -2202,7 +2202,8 @@ vm_object_coalesce(vm_object_t prev_object, vm_ooffset_t prev_offset, /* * Account for the charge. */ - if (prev_object->cred != NULL) { + if (prev_object->cred != NULL && + next_pindex + next_size > prev_object->size) { /* * If prev_object was charged, then this mapping, * although not charged now, may become writable @@ -2213,12 +2214,14 @@ vm_object_coalesce(vm_object_t prev_object, vm_ooffset_t prev_offset, * entry, and swap reservation for this entry is * managed in appropriate time. */ - if (!reserved && !swap_reserve_by_cred(ptoa(next_size), - prev_object->cred)) { + vm_size_t charge = ptoa(next_pindex + next_size - + prev_object->size); + if (!reserved && + !swap_reserve_by_cred(charge, prev_object->cred)) { VM_OBJECT_WUNLOCK(prev_object); return (FALSE); } - prev_object->charge += ptoa(next_size); + prev_object->charge += charge; } /*