From nobody Fri Aug 02 23:35:27 2024 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 4WbMdW4p30z5RQlS; Fri, 02 Aug 2024 23:35:27 +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 "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WbMdW4Gqpz4j2N; Fri, 2 Aug 2024 23:35:27 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1722641727; 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=e5+00tGn2yhUciuy3ER+jgf64fbAKaVH1vHddUolMII=; b=ddRsdgcOoQ3EKR6aJwLQwoZGUnq4mgDdfb1Eqv2LVA8AiZIMKqbq6VshecYB5X+biSRiBF Hwk1YwJyCaPNt40gp+As69OPrRVU6ipOnttydEyPfrWqmVkrRIUWPy9eUiZsWhQymcWSGt kJwdZFJ6ApqHz5nCuye+iuXCFMG73fhQa2hnagXcWnfeylbjaR27MtrQq7m8rQS+KwEl20 kKO3aEVU/yth494OQLeq1Kcs/+1QvDYx7LkOuQoMMpWiD5Up3/OILQzmIc08dLUVZmtNGV acSishCGGJsL/MBO1nfQwBIQ91i1E0HIvGYIJZvVEWic//HRWqHio6QwIWE/BQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1722641727; a=rsa-sha256; cv=none; b=gcjxAjzK8bB/qBcaeBDFKPn2Oy9Cgj14I4YxdudfWNq+JDBTnO3qHs6Zo+1+KLcqx/a7fi LfLz1G6ECkWs19DEN0dfJHuSK4sMN/ASpoVu0/WeWr/QBgpwGosSsvfDFZBwQ5WVy8asbE gatuYLoJPaK1HiKIgKPXH5HvMr4dPNPiIxhq3kIqugshMkut1cSPASEfRtfeLLoANgHNM+ KS7VZI86OHMqEpWcCnNF8/94itNiF/bQsFf7/9L0e1G46KYBO/KeGksy8Wq0t1cZgLv1wL /zXFKx7OMurS0eddOBzB9gm49fXGdQcEcHuSD+294DLV+tHQPKHjRwnltDch7Q== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1722641727; 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=e5+00tGn2yhUciuy3ER+jgf64fbAKaVH1vHddUolMII=; b=MBUDNKXo1bD1nelPa2/LVi2FYjretPKz14J+BuzfweBc0AKM2utcBH8FilseUUC6sRkhJu JGkR+o182XqeUdHSwkhw/dbwrHkEFJofrHgGWcXlPuq2GUXtooeoV7sS4Qc07agVxERShk 37Ittcp5UUq/LvgusdEO3TP5ESdkWTQDbrjNSZHnoTsyIRem5gavvN2elMS+j8dNUiI6di nvR2i4MgCHg1XKBljkO2I5kuwElW27QnjYoNeaxadu5g4N5IhIjwGkqiXiGhpfA45nwW3V ZTNmmcyJ+h3JZf0SM+MKYQBGk6Hs4Eft624zyVQxGw6zUzW1GLeoOe4zHVR4Yg== 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 4WbMdW3pKKznnV; Fri, 2 Aug 2024 23:35:27 +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 472NZRJ4084238; Fri, 2 Aug 2024 23:35:27 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 472NZRBG084235; Fri, 2 Aug 2024 23:35:27 GMT (envelope-from git) Date: Fri, 2 Aug 2024 23:35:27 GMT Message-Id: <202408022335.472NZRBG084235@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Alan Cox Subject: git: f076dd3ef02d - main - imgact_elf: Optimize pagesizes[] loop 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: alc X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f076dd3ef02ddf7799eeaab8d405ee9d845e8dc6 Auto-Submitted: auto-generated The branch main has been updated by alc: URL: https://cgit.FreeBSD.org/src/commit/?id=f076dd3ef02ddf7799eeaab8d405ee9d845e8dc6 commit f076dd3ef02ddf7799eeaab8d405ee9d845e8dc6 Author: Alan Cox AuthorDate: 2024-07-15 06:02:33 +0000 Commit: Alan Cox CommitDate: 2024-08-02 23:26:11 +0000 imgact_elf: Optimize pagesizes[] loop Except for elements whose value is zero, the elements of pagesizes[] are always sorted in increasing order, so once a loop starting from the end of the array has found a non-zero element, it has found the largest valued element and can stop iterating. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D46215 --- sys/kern/imgact_elf.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sys/kern/imgact_elf.c b/sys/kern/imgact_elf.c index a623a63e9c2e..28ffdd03dd6d 100644 --- a/sys/kern/imgact_elf.c +++ b/sys/kern/imgact_elf.c @@ -1158,8 +1158,10 @@ __CONCAT(exec_, __elfN(imgact))(struct image_params *imgp) maxalign = PAGE_SIZE; maxsalign = PAGE_SIZE * 1024; for (i = MAXPAGESIZES - 1; i > 0; i--) { - if (pagesizes[i] > maxsalign) + if (pagesizes[i] > maxsalign) { maxsalign = pagesizes[i]; + break; + } } mapsz = 0;