From nobody Thu Dec 18 05:56:52 2025 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 27C5ECDB483 for ; Thu, 12 Oct 2023 19:47:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1442628AbjJLTrh (ORCPT ); Thu, 12 Oct 2023 15:47:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55304 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1442416AbjJLTr0 (ORCPT ); Thu, 12 Oct 2023 15:47:26 -0400 Received: from mail-io1-xd2a.google.com (mail-io1-xd2a.google.com [IPv6:2607:f8b0:4864:20::d2a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2AEE1D7 for ; Thu, 12 Oct 2023 12:47:25 -0700 (PDT) Received: by mail-io1-xd2a.google.com with SMTP id ca18e2360f4ac-79fe87cd74eso53624839f.3 for ; Thu, 12 Oct 2023 12:47:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697140044; x=1697744844; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=071vttQwsRtHTk9tdWp1lQy+KTSRjIxShniNeq+GU3Y=; b=dEdQySNxeH6BRAk/+ev1J5ZuaWr49h7kURh6eKxxY7YH6HS+yEJywgZEK3u0evpHlg N9P8zFw92jppvQm0JUE3rlN8BBUAmLwsmgCCy7RuzYFl+tPejRqqUzP4O5gbEi7eQUl6 8o4bp7U5uweqtv38huuAx67Tetxpwy4IhPJ0lgvULP+drbs1YmM7fr5WKljZiww8x75W B0hMrE+iKrI/Edu3lhrANGMO9uyhCCrmhUC54l8tusu19oAajZRQLsV0ig7WYN01TYeG NAdSH7IJlRP0m02GiuMIeum/i77kMJ3GdzItVi+lyMFDafzL/ztCzdajMuI2JEjOp+Dn 9AMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697140044; x=1697744844; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=071vttQwsRtHTk9tdWp1lQy+KTSRjIxShniNeq+GU3Y=; b=D+0gjpSYSUbEa9lbhkVpPG8Q2Cy5RfvudYqPvLcmby7/L202npc6k7KF5M+1lJ3kqI Sz9mzo4avexZ8BRceR9y7dto07nly3n1II3NxP7o7JQi7YcBNbpYtHgt5h9Lm0B/cSYZ 9pDDu68+z/AqGp2w20hKiHxrXwbqafJPcubSKeyTktN5H0V6+LmnID3Yp2fzu7oFQNxw 5nOrdYAtwuX5q7lsa8eD2Nt75ObxoaUlo602/JPF1VOhaDPEFj/nXkRJOG5s+yAsIly3 A8Kd6ATKwsluvZ09fSxME91133Ch+J/DrVmfesIZ37K67VEjwatqeL3S0528kxazvejG Xn7w== X-Gm-Message-State: AOJu0YycA77ZVLsjPwqvFRVc+bbtA76Rg4FaUnOt2Eay/0pZ3ZbLGKFm bG675rXvqAtedqPkahOmeFiQbYU4YKH9Tg== X-Google-Smtp-Source: AGHT+IHZHagMWy2HPI0YrF34ye0IkVkYy10h1jWIvdho+KQVHFHRQjT4ByRa26XBH6udfT+GuQvITg== X-Received: by 2002:a5e:8f4d:0:b0:791:2db5:c779 with SMTP id x13-20020a5e8f4d000000b007912db5c779mr31016076iop.10.1697140044235; Thu, 12 Oct 2023 12:47:24 -0700 (PDT) Received: from frodo.. (c-73-78-62-130.hsd1.co.comcast.net. [73.78.62.130]) by smtp.googlemail.com with ESMTPSA id z7-20020a5ec907000000b0079fbb834232sm4351002iol.19.2023.10.12.12.47.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 12:47:23 -0700 (PDT) From: Jim Cromie To: linux-kernel@vger.kernel.org Cc: david@redhat.com, Liam.Howlett@Oracle.com, linux-mm@kvack.org, Jim Cromie Subject: [RFC PATCH 03/10] dyndbg: add 2nd cursor pair to init-fn Date: Thu, 12 Oct 2023 13:47:04 -0600 Message-ID: <20231012194711.3288031-4-jim.cromie@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231012194711.3288031-1-jim.cromie@gmail.com> References: <20231012194711.3288031-1-jim.cromie@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" In dynamic_debug_init(), add 2nd cursor pair to walk the __dyndbg_sites section in parallel with the __dyndbg section. This avoids using the _ddebug.site pointer during initialization, which is a 1st step towards dropping the member entirely, and reducing the struct size and section footprint. no functional change Signed-off-by: Jim Cromie --- lib/dynamic_debug.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c index 0ad9f1bc00f0..51af6a75ae92 100644 --- a/lib/dynamic_debug.c +++ b/lib/dynamic_debug.c @@ -1501,6 +1501,7 @@ static int __init dynamic_debug_init_control(void) =20 static int __init dynamic_debug_init(void) { + struct _ddebug_site *site, *site_mod_start; struct _ddebug *iter, *iter_mod_start; int ret, i, mod_sites, mod_ct; const char *modname; @@ -1508,9 +1509,11 @@ static int __init dynamic_debug_init(void) =20 struct _ddebug_info di =3D { .descs =3D __start___dyndbg, + .sites =3D __start___dyndbg_sites, .classes =3D __start___dyndbg_classes, .class_users =3D __start___dyndbg_class_users, .num_descs =3D __stop___dyndbg - __start___dyndbg, + .num_sites =3D __stop___dyndbg_sites - __start___dyndbg_sites, .num_classes =3D __stop___dyndbg_classes - __start___dyndbg_classes, .num_class_users =3D __stop___dyndbg_class_users - __start___dyndbg_clas= s_users, }; @@ -1533,16 +1536,19 @@ static int __init dynamic_debug_init(void) return 0; } =20 + site =3D site_mod_start =3D di.sites; iter =3D iter_mod_start =3D __start___dyndbg; modname =3D desc_modname(iter); i =3D mod_sites =3D mod_ct =3D 0; =20 - for (; iter < __stop___dyndbg; iter++, i++, mod_sites++) { + for (; iter < __stop___dyndbg; iter++, site++, i++, mod_sites++) { =20 if (strcmp(modname, desc_modname(iter))) { mod_ct++; di.num_descs =3D mod_sites; + di.num_sites =3D mod_sites; di.descs =3D iter_mod_start; + di.sites =3D site_mod_start; ret =3D ddebug_add_module(&di, modname); if (ret) goto out_err; @@ -1550,10 +1556,13 @@ static int __init dynamic_debug_init(void) mod_sites =3D 0; modname =3D desc_modname(iter); iter_mod_start =3D iter; + site_mod_start =3D site; } } di.num_descs =3D mod_sites; + di.num_sites =3D mod_sites; di.descs =3D iter_mod_start; + di.sites =3D site_mod_start; ret =3D ddebug_add_module(&di, modname); if (ret) goto out_err; --=20 2.41.0