From nobody Mon Dec 15 10:42:28 2025 X-Original-To: dev-commits-src-all@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 4dVGpr3kyjz6Ky9H for ; Mon, 15 Dec 2025 10:42:28 +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 "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dVGpr290Cz3scV for ; Mon, 15 Dec 2025 10:42:28 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765795348; 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=qCGVPjLSIUaixTgekY/YVLwPWAhWhN2TF4V3QTZSuPE=; b=J6ItRzMXvzgdPuDrsx3Mgl8CCE+1CqKfHrAGyFXnqH9s+vuNiPkqtjLJqaGKOijXpQEBk1 uOmitHKOqc+uuHvtDOnmtC3GiUfpFkQo9FSgXgjdCJjmc4PoVuzwTRkSz+F+Ox7L1Vhbyk 7byrORapUwOszIieLJlZ2w7kWOgDT97f/AvkjAJhEaNrzq1jnba8Mb2hV+0YPT9j8S9Ufs WECqe65djr7d6ruyUYy5v2xJdadkwOrAfCPA0EO6Z03yZyqC8Pz/1Y6aj+LKbrznRpDrFD Zp4cS4wG//Oto7eZj9zkNcAodqQZtraMO4xC/B12HinApfRaAD/NmWRAdReiNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1765795348; 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=qCGVPjLSIUaixTgekY/YVLwPWAhWhN2TF4V3QTZSuPE=; b=FI1zSQCrmBXTa7mK/cr7w+JMtt6IUNK2q0UpV5FqchLph731LpiLFFhKREL6DW35HNNX8d GbSO7MdAHdu7pkZAvwQdSag7jB9t7LiyRCL0u7NK5YOgP4vLZ49evkQJHWFBzhJb/9/j8r ePrr2lbmt0+HfcLa13/Q+BgstsHloDw6/c2Kac7BAtORhJW8+zEXNPfIh8AuXsnMwnMVSB 6Zicg7KB3xBvGBavxYNc1wbsa2UJzf3mnny4uymVhMqG+VYjyUWSFvgnOzaEGxpqW6Fh8S Gt7aJ8udWX6Xs1RxYmqinvrX5csJsrVXIfp5ChnMR2wH5CKf8o4k/3JlWHxf7g== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1765795348; a=rsa-sha256; cv=none; b=d2pa+Q7HZOiIxUexGAwR6ggh+LWP/HDieHK4uvfdNjA9OfI4s5ElkCv4tsL8kgayWV24hU nRzrl/hvZwzUgWwcwVYAfgQpOKHR+meE5gSsrksb/sNUenYtckM2hffMb4loMwHbrksmzy 156gtje+Wk7vQipdA1Kl34wnWrXE4l4e1SPgnK0WqQTfVy1lHMm5jMRsBu6fyNAEfq5aXT 8paDluEAf5Ta480AEaQFOc6Xd1IGliDn6kY5iAAT2r6GwcT6I6Qv15u8UktFQNbAV+QzSL yFG2CgQ95ABjYt0upeMIEG8e95RMNV0U28+XCyV7tx/7wfZL/+Z86Yi8/cvcbA== 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 4dVGpr1m9zz1lh for ; Mon, 15 Dec 2025 10:42:28 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 47ac8 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 15 Dec 2025 10:42:28 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: 99f641267d44 - stable/14 - vm_fault: only rely on PG_ZERO when the page was newly allocated List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@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/14 X-Git-Reftype: branch X-Git-Commit: 99f641267d449f26a2e13449964f29d17897c29f Auto-Submitted: auto-generated Date: Mon, 15 Dec 2025 10:42:28 +0000 Message-Id: <693fe614.47ac8.b86187a@gitrepo.freebsd.org> The branch stable/14 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=99f641267d449f26a2e13449964f29d17897c29f commit 99f641267d449f26a2e13449964f29d17897c29f Author: Konstantin Belousov AuthorDate: 2025-11-28 15:57:22 +0000 Commit: Konstantin Belousov CommitDate: 2025-12-15 10:38:58 +0000 vm_fault: only rely on PG_ZERO when the page was newly allocated (cherry picked from commit cff67bc43df14d492ccc08ec92fddceadd069953) --- sys/vm/vm_fault.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 9f7176eebabb..87744e2d3210 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -137,6 +137,7 @@ struct faultstate { vm_object_t object; vm_pindex_t pindex; vm_page_t m; + bool m_needs_zeroing; /* Top-level map object. */ vm_object_t first_object; @@ -272,6 +273,7 @@ static void vm_fault_deallocate(struct faultstate *fs) { + fs->m_needs_zeroing = true; vm_fault_page_release(&fs->m_cow); vm_fault_page_release(&fs->m); vm_object_pip_wakeup(fs->object); @@ -1205,7 +1207,7 @@ vm_fault_zerofill(struct faultstate *fs) /* * Zero the page if necessary and mark it valid. */ - if ((fs->m->flags & PG_ZERO) == 0) { + if (fs->m_needs_zeroing) { pmap_zero_page(fs->m); } else { VM_CNT_INC(v_ozfod); @@ -1319,6 +1321,7 @@ vm_fault_allocate(struct faultstate *fs) vm_waitpfault(dset, vm_pfault_oom_wait * hz); return (FAULT_RESTART); } + fs->m_needs_zeroing = (fs->m->flags & PG_ZERO) == 0; fs->oom_started = false; return (FAULT_CONTINUE); @@ -1650,6 +1653,7 @@ vm_fault(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, fs.fault_flags = fault_flags; fs.map = map; fs.lookup_still_valid = false; + fs.m_needs_zeroing = true; fs.oom_started = false; fs.nera = -1; fs.can_read_lock = true;