From nobody Tue Sep 9 07:58:01 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 4cLbls4CNnz66Ytd; Tue, 09 Sep 2025 07:58:01 +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 4cLbls3MvMz3DDb; Tue, 09 Sep 2025 07:58:01 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404681; 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=cYXZvVphO6PVVWgP59LrQXNs//99fsppcFZwDM6C3LA=; b=cgyW6zi8rlPtYqsxwNKOIZZFyXLbVKmdEdjxAKuhnIbvv9xcieI3aZwI52rmbfrqZVNRzu FEBDLEBVfe7p/NTZ7GN2rVxAPppeoRmP9CtiYBAO7Hs6eO055+yIE5/ZH7DZs/3/4FwT1c G7XU78sdSysltSWQ7zwSws6+eNK7zaYgLMJzx0Pp0uUlrOeD5ku0onvtlBA32BEa7GgxAL wEr9o/67Y3h+MYdFbUu4Rnos0MxRQ3nogfVER8z/Xm3BZ9R1vQz3cTv1BQVCV2vsmymA7i 2Ty9Y6bvTLUV0KuZ6OP6oPlNu8cz5uBERyVoZ/TXqN/UmQtlJkvPbGGL5shWig== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1757404681; 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=cYXZvVphO6PVVWgP59LrQXNs//99fsppcFZwDM6C3LA=; b=REABhNeBnRBTBaikhu5J2Vz2Zffg0wk6b16KopOwbLQjLCWhHZWLZdR2K3RkQBP9NccCUM ny6++nAGQFhUzlSmH2ivz+LM/encU+Yo/LfpQabWuPQINjjQRJp4rk79Mfox36pScsKcLG Lk66V2ucOhiuc50ABDXE+di/mQDExxWOMbagHUEXohyesWSJtd+k18PIL9ZaWDN+MzgKSP 5mAuAMdUh4MRMk117wUbBcOoEdPAarKRRw+q0UJq2apQeYruyZA2RQ/nxr5FO+nw4oYvbQ eu4Qv99GdolrxvaSHKVlFA79/qQQD2aG0y3TwiKdEm1XXBn9C8L+FV4iU0wgLw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1757404681; a=rsa-sha256; cv=none; b=VAIclga+aRvxa/Mtk4Nrq8iShzNHzc/YCIZrCtwL2I1AK+ZF0VZSI4lvhIr9dkRDzBXgzN 4tKbogBRUh0SUxvD8eVEG5n4fvlSiTvIqdJ3upnkChTOBMTyoZqedJjeP30yFyoWBu4k3q Yi+UdaCQsWW6KjT3EvxEME95L0fuvmvHEdtyyEslKcsmwH6bZ0WOjj0g+m0IyyDh5hjPTk qlPqAgkXInbifX04z/rMuX7ZeYhs9Cz+H+MMI7hRi69WS9eV0pr0FNDFT/5Mg65sHu5oeH AkG7Xt77gUKOweBXVOYZQZzUqdFmWsTM4dZec11nAVjXmkm+ruhyt0ABhjKg2Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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 did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4cLbls2YxzzBdf; Tue, 09 Sep 2025 07:58:01 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 5897w1EA037436; Tue, 9 Sep 2025 07:58:01 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 5897w1fg037433; Tue, 9 Sep 2025 07:58:01 GMT (envelope-from git) Date: Tue, 9 Sep 2025 07:58:01 GMT Message-Id: <202509090758.5897w1fg037433@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Olivier Certner Subject: git: d0b691a7c1aa - main - vm_domainset: Simplify vm_domainset_iter_next() 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: olce X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d0b691a7c1aacf5a3f5ee6fc53f08563744d7203 Auto-Submitted: auto-generated The branch main has been updated by olce: URL: https://cgit.FreeBSD.org/src/commit/?id=d0b691a7c1aacf5a3f5ee6fc53f08563744d7203 commit d0b691a7c1aacf5a3f5ee6fc53f08563744d7203 Author: Olivier Certner AuthorDate: 2025-07-07 20:37:14 +0000 Commit: Olivier Certner CommitDate: 2025-09-09 07:56:50 +0000 vm_domainset: Simplify vm_domainset_iter_next() As we are now visiting each domain only once, the test in vm_domainset_iter_prefer() about skipping the preferred domain (the one initially visited for policy DOMAINSET_POLICY_PREFER) becomes redundant. Removing it makes this function essentially the same as vm_domainset_iter_rr(). Thus, remove vm_domainset_iter_prefer(). This makes all policies behave the same in vm_domainset_iter_next(). No functional change (intended). PR: 277476 MFC after: 10 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D51250 --- sys/vm/vm_domainset.c | 32 ++------------------------------ 1 file changed, 2 insertions(+), 30 deletions(-) diff --git a/sys/vm/vm_domainset.c b/sys/vm/vm_domainset.c index bd15449559a5..a46dbe5ae92e 100644 --- a/sys/vm/vm_domainset.c +++ b/sys/vm/vm_domainset.c @@ -101,22 +101,11 @@ static void vm_domainset_iter_rr(struct vm_domainset_iter *di, int *domain) { + /* Grab the next domain in 'ds_order'. */ *domain = di->di_domain->ds_order[ ++(*di->di_iter) % di->di_domain->ds_cnt]; } -static void -vm_domainset_iter_prefer(struct vm_domainset_iter *di, int *domain) -{ - int d; - - do { - d = di->di_domain->ds_order[ - ++(*di->di_iter) % di->di_domain->ds_cnt]; - } while (d == di->di_domain->ds_prefer); - *domain = d; -} - static void vm_domainset_iter_interleave(struct vm_domainset_iter *di, int *domain) { @@ -133,24 +122,7 @@ vm_domainset_iter_next(struct vm_domainset_iter *di, int *domain) KASSERT(!DOMAINSET_EMPTY(&di->di_remain_mask), ("%s: Already iterated on all domains", __func__)); - switch (di->di_policy) { - case DOMAINSET_POLICY_FIRSTTOUCH: - /* - * To prevent impossible allocations we convert an invalid - * first-touch to round-robin. - */ - /* FALLTHROUGH */ - case DOMAINSET_POLICY_INTERLEAVE: - /* FALLTHROUGH */ - case DOMAINSET_POLICY_ROUNDROBIN: - vm_domainset_iter_rr(di, domain); - break; - case DOMAINSET_POLICY_PREFER: - vm_domainset_iter_prefer(di, domain); - break; - default: - panic("%s: Unknown policy %d", __func__, di->di_policy); - } + vm_domainset_iter_rr(di, domain); KASSERT(*domain < vm_ndomains, ("%s: Invalid domain %d", __func__, *domain)); }