From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D8C4EC25B7E for ; Tue, 4 Jun 2024 06:30:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5A3DB6B008A; Tue, 4 Jun 2024 02:30:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 51B706B0093; Tue, 4 Jun 2024 02:30:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EA24E6B0092; Tue, 4 Jun 2024 02:30:03 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 8F2CF6B0088 for ; Tue, 4 Jun 2024 02:30:03 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 48FA51A0969 for ; Tue, 4 Jun 2024 06:30:03 +0000 (UTC) X-FDA: 82192231086.04.A6F2B5D Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf22.hostedemail.com (Postfix) with ESMTP id 56A62C0008 for ; Tue, 4 Jun 2024 06:30:01 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=pA4dmeog; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf22.hostedemail.com: domain of devnull+j.granados.samsung.com@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=devnull+j.granados.samsung.com@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1717482601; h=from:from:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=IJzMVukPtS876YYkYzr1cLufRLNFzlqZjVB2lI5Csko=; b=Vn1c6ECAe3ZUz7kQU9/OibwXWMVcUGrvZySwuZ9bt0WxyUpQEuxFzAVYWMboLmzfe0Rw1z 6rNcNIXcf3HdyiaiQcTiIL6OBhT52bExNxWnW5+bVVYdpsqGW4jXC3FlNjHGvgMPzttU/y y4WPYQKSunteFz5AIysfOvheRzajSp8= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=pA4dmeog; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf22.hostedemail.com: domain of devnull+j.granados.samsung.com@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=devnull+j.granados.samsung.com@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1717482601; a=rsa-sha256; cv=none; b=YNY5PUUIdn5iNB+KEqIu+QHJ7p+NCtxcLfmRyMMAvt+z/g5hvBo08HJWKx12o9YJwSSyCw F16NwgI5OAW706zGVMvy2wxHBoWtEgjvsf6CDvVo6KACQujlpTH9Uasv8qtQdmASwC6Xx5 K1Xss6um8iUaX3r2rzNi1OUJVRO7oUc= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 8F78B61217; Tue, 4 Jun 2024 06:30:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPS id AEBC7C4AF09; Tue, 4 Jun 2024 06:29:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1717482599; bh=SiVUhtxONKQWX+BBZwI127KwpXG2Q3vZOfxEJQppcWk=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=pA4dmeogTARSZfUZ/Gh9KHrzmf7wDP8GqwUGhu5YY1UfYSpIYx7Ne3usxtGqOwF2J mA5x5+xvD0pZwhihYG1Ufi1aaFA8o2vmdw121w6VUTnpX7cM1CcG8/w9hdles60tLI 5sNqVzC6xqZol58Rt0b4wJcCTQLTqh5WaMaM1gJt8R8rFyUCTLy2e78mU5MjXxt9xv 3+j9/MOmODLqmTStj6lUdjNt3QeZfewviDek6mipvnJGN1KTs8WIU/WH4EyjcrQx5i x+Sbm2GdzftBbBsodZq+OgHOAWOsgB5lDdMspCkESqr7WUTz24atJeZbtBMslDcz/A Xah1DKevIQW2w== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id A0F52C27C55; Tue, 4 Jun 2024 06:29:59 +0000 (UTC) From: Joel Granados via B4 Relay Date: Tue, 04 Jun 2024 08:29:21 +0200 Subject: [PATCH 3/8] sysctl: Remove check for sentinel element in ctl_table arrays MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20240604-jag-sysctl_remset-v1-3-2df7ecdba0bd@samsung.com> References: <20240604-jag-sysctl_remset-v1-0-2df7ecdba0bd@samsung.com> In-Reply-To: <20240604-jag-sysctl_remset-v1-0-2df7ecdba0bd@samsung.com> To: Peter Zijlstra , Ingo Molnar , Will Deacon , Waiman Long , Boqun Feng , Suren Baghdasaryan , Kent Overstreet , Andrew Morton , Luis Chamberlain , Kees Cook , Joel Granados , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, netdev@vger.kernel.org X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=2348; i=j.granados@samsung.com; h=from:subject:message-id; bh=mD4Ze/7MDPElpYuv5XGK8tVRov3P49zLBw+A3YRwezE=; b=owJ4nAHtARL+kA0DAAoBupfNUreWQU8ByyZiAGZetGMc5UA19wZYyokNq00ONpu/iFrRM3b3d ji21KMQyCufh4kBswQAAQoAHRYhBK5HCVcl5jElzssnkLqXzVK3lkFPBQJmXrRjAAoJELqXzVK3 lkFPjSkL/jbkTtKEHy2F4Zoay4bUyht8qYvmVrqYV35vhM08LmptpbTf9aDW49d1wvwom8i7zTo +bkTEJ+q5fEM8JibuQ4wBCwuyN55TQaiyynC6+P1sISJFiR+wNNKUkzoJZJuds9xIN3VHDBujmF hNT6GLin8xncVd6bXgjH1ukPvQamXDCmxcTzZ2ES5fPV4d063gEAAo0nfHkZRnPYcBfiPAf6E0W 6G/lTK5uCzNa1ienyagjyYa/UhAA/5IR33bkyguc9SGsBIZ5T33xBdFUHEfNS3GwclPA2Yt2jZ1 LYUI6YkfSftzj365NjA/UIsfGOdho/i4+CyV68VYXCQ0uQqSokz3ckRi9m/9JJOmT+qgzaSJbad kdWkSUcfn0vkojZPlpE8X3ed9U671GRAu0H/6f3Mv1yLfMoZEfspW68GFf+XV2mwWYYfmJl8rny mq0grO/Kf0H96o3+fcySffKJnyun8yE/Sil4YyRoh2AS4mwi23lOtffZxZJuyJcUTavw5iP4Pw6 PI= X-Developer-Key: i=j.granados@samsung.com; a=openpgp; fpr=F1F8E46D30F0F6C4A45FF4465895FAAC338C6E77 X-Endpoint-Received: by B4 Relay for j.granados@samsung.com/default with auth_id=70 X-Original-From: Joel Granados Reply-To: j.granados@samsung.com X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 56A62C0008 X-Stat-Signature: 3ouwxu59wuktzwnyibus9pyc5x8inaj5 X-HE-Tag: 1717482601-900890 X-HE-Meta: U2FsdGVkX18jWv+9FYLc20Nhq3LkY6Zaxq49/Bwoj5+bSz4iNyxWeCJhj34OWNpHbzY+VYCsFOYgedyNX4RX2P3JAsvsRBqS8PDuY4zdBf0dFfrvIhiQdlvU4nczYmz108fcp+7NyXgZq0X5Btk25gpK3kkpppkrwAwU6YBW0qOcSMmRW4tCbrK8/kOXOAUKwHg+FyioHgTSncNO8gA+a8ZpaqCPdTmIj4QTtv8jKE9cMt8KFB3tZB8vcPKXFR3JRqKKdGvBKkRLGmAzm0f6Ie9Qlhbep9N0kP7Ng4YSes5nVw64j0heyE+phfuMHT4D4eA9qfF0Hnk2uDjuzL2WXOvUTOB+8pN/K0dGISNSlH1W1K+bDq/Cy0DI0/YY4jCnXZkmyA0Fb2MPHf87OFkZzksRsM5q3RFM5A8jSSWJZjX3vQ8DAQDLfOFr/HMWdM4v21v9vkO61o4Gw6+4rAFeH09ftLaLQXR5AjaTDuNYibkOXe4F8oRTyKljo/2U8xrY4y9DKtzNrtUs3FAdUyQxsBEEjkNZB2J05t/yGPjdp1Xn5GJT2aQyOseZYoBADBZIqAbjqTxDbHLC0CdF2pXXRdZU4gOPtuBDCvPvsZTGvUyJ7TLSk34Rn/eQesPv+8sE2sLkNsqb9LxcMX+qA82XbRKp+LA+yArDKavRdEtCNiAH1GyJATjT5BxsUYJ98+mAmEthn1dGVJRvIIeWSRvdpkA8CwFGxz7XUyXnZ+R6Sg8DTBKgP4xyfTWTJBd/P9/DiBz9Lc+KmZTQjCCfhbuR5VZ1fSG/Nq82r061ZkMTeYFHvrOCqLQDTMpjD/g8kiN3FpuaOL4H+l/fDA1IfJZGGUG1+iCEBs4PfyYgYTzrS4SSIDCSZB29IJAkyZWYJ5wN66L7He4STSD7u7ZxvRlH6r37716Viix11Va0sqouChMnhG2Petfni7CwtofaBoj82wecC6HDhqzj5sd9r7X WG4fp0U/ zmgnEfQ0x2dZUAGl88plbwi1XGO5IqfcTVhnfz0aNcTrTZn5gmjKDUl+m1/SHpRFY+/MUXQttrqXBIzpT0owhmCfiRSB7xfhi7Hq6NvO4QIx8X38XiO2K7ziDtnxUaL+er1nvMhC+m6RKFrxWa0/QMu5oGT7FM4FwUA5H26BZhCLv7RLmz1p7t+u31RGccu6J+0ukn6ZTRivr03np1h9IsLcrYahXVWJSpveykjLvrP+oPXzgcaeKdMddnkp+yEWZnP1nKDnjWe1auiF4eJ1u9kBAvXIiPW3CFaS3ooGhkPHzlYi/Qyao7y+Mikd54c8VTcTsODmBrA/1RaScumg5iyHcM1mhgpK0L5nzmP9tInJDjDg4zP5WGiPhg4L6jXq9ZLUt/ME05ww74wXWSq/8BBXnu58wXVGgSuDDpVwtAWl+fhZ11SJf7Zama+xqvuswYs6q69PLn8P274yh5+83sbay2ryqm246ZM4nu/P5yUED09+xXb0SuShj+o9IQQj5LcWDF5FyndLR+tmRWyTH+XscxEcznNkYDogM X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: From: Joel Granados Use ARRAY_SIZE exclusively by removing the check to ->procname in the stopping criteria of the loops traversing ctl_table arrays. This commit finalizes the removal of the sentinel elements at the end of ctl_table arrays which reduces the build time size and run time memory bloat by ~64 bytes per sentinel (further information Link : https://lore.kernel.org/all/ZO5Yx5JFogGi%2FcBo@bombadil.infradead.org/) Remove the entry->procname evaluation from the for loop stopping criteria in sysctl and sysctl_net. Signed-off-by: Joel Granados --- fs/proc/proc_sysctl.c | 2 +- net/sysctl_net.c | 11 ++--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c index b1c2c0b82116..d4ba7ad9dbe0 100644 --- a/fs/proc/proc_sysctl.c +++ b/fs/proc/proc_sysctl.c @@ -21,7 +21,7 @@ #define list_for_each_table_entry(entry, header) \ entry = header->ctl_table; \ - for (size_t i = 0 ; i < header->ctl_table_size && entry->procname; ++i, entry++) + for (size_t i = 0 ; i < header->ctl_table_size; ++i, entry++) static const struct dentry_operations proc_sys_dentry_operations; static const struct file_operations proc_sys_file_operations; diff --git a/net/sysctl_net.c b/net/sysctl_net.c index f5017012a049..19e8048241ba 100644 --- a/net/sysctl_net.c +++ b/net/sysctl_net.c @@ -127,7 +127,7 @@ static void ensure_safe_net_sysctl(struct net *net, const char *path, pr_debug("Registering net sysctl (net %p): %s\n", net, path); ent = table; - for (size_t i = 0; i < table_size && ent->procname; ent++, i++) { + for (size_t i = 0; i < table_size; ent++, i++) { unsigned long addr; const char *where; @@ -165,17 +165,10 @@ struct ctl_table_header *register_net_sysctl_sz(struct net *net, struct ctl_table *table, size_t table_size) { - int count; - struct ctl_table *entry; - if (!net_eq(net, &init_net)) ensure_safe_net_sysctl(net, path, table, table_size); - entry = table; - for (count = 0 ; count < table_size && entry->procname; entry++, count++) - ; - - return __register_sysctl_table(&net->sysctls, path, table, count); + return __register_sysctl_table(&net->sysctls, path, table, table_size); } EXPORT_SYMBOL_GPL(register_net_sysctl_sz); -- 2.43.0