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 6C601CDB47E for ; Thu, 12 Oct 2023 19:48:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EA3858D014C; Thu, 12 Oct 2023 15:48:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E56AA8D0002; Thu, 12 Oct 2023 15:48:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CA6A88D014C; Thu, 12 Oct 2023 15:48:44 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id B786F8D0002 for ; Thu, 12 Oct 2023 15:48:44 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 960E9408E3 for ; Thu, 12 Oct 2023 19:48:44 +0000 (UTC) X-FDA: 81337846968.26.944F321 Received: from mail-io1-f43.google.com (mail-io1-f43.google.com [209.85.166.43]) by imf25.hostedemail.com (Postfix) with ESMTP id A50FAA0006 for ; Thu, 12 Oct 2023 19:48:42 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=mSEfOtTh; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf25.hostedemail.com: domain of jim.cromie@gmail.com designates 209.85.166.43 as permitted sender) smtp.mailfrom=jim.cromie@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1697140122; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=EdFWb7R/lDvUnWmGrNZ1doFLmbR1Cvf7k7ETF/HiAfA=; b=ERYUgFLaK/gtwSRJ650IUtscoTF9Q1zTCS6alRkWkBJDbnh21MdS0tgtE1Psfp961a72aY q0sbllloGAl5skAo5Fez4v7OzQo3W0ar5jgM1FElsb+4M419R5EXFwJoOhiogxh9vpUlI3 jur71R950Doy55rr07xYqb4qmKPtLUI= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=mSEfOtTh; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf25.hostedemail.com: domain of jim.cromie@gmail.com designates 209.85.166.43 as permitted sender) smtp.mailfrom=jim.cromie@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1697140122; a=rsa-sha256; cv=none; b=fKZGQTJQqhRAYT13ezLqASzH31XNESn8CeEMvOtT/ee3vHz5YItnItkN3x3RZ1ZJxj+MmV Qfomd/7afBu03GoSXntC6LPkEXQVIj84bamWL2wOU9rrlxITky+1A+TyexqBwxlvw6uTUw g6nN532/Ixl6aCYtFKV65DkJKIMhpJg= Received: by mail-io1-f43.google.com with SMTP id ca18e2360f4ac-79f909071c3so55465539f.0 for ; Thu, 12 Oct 2023 12:48:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697140122; x=1697744922; darn=kvack.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=EdFWb7R/lDvUnWmGrNZ1doFLmbR1Cvf7k7ETF/HiAfA=; b=mSEfOtThQAo8zGYeXN4CncN68ui70BhDVzWvb24Mg5CAbi88nQdDKXxCKGt7u8QAxm pcL0XCAmdKpZx3mFyOUd3I2jiKzCo94yNUieocOeZvN4L/Gh18PsH4cVH5MoPY+590i1 1UT+Wp5d8QhQczME1AF4DwDQO+htlU6D4wfSz1p8gqRFHUMJ2xSVw2wYIXJrEBG/CzcJ l0srcsEJZmfnbdmbhm+XBXY4KXyYASAAZxH72p0S+iuTeIVNzaLwDcTMMX8mRLBb9USX g/oDAKvGcC7QrhXBAQcyd9To/2VX2Rmq5VKomVj82sdkZNsH7Fn2xvOg/znSalL7zDaP 5Tug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697140122; x=1697744922; 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=EdFWb7R/lDvUnWmGrNZ1doFLmbR1Cvf7k7ETF/HiAfA=; b=ot7p+gc5J9IWLRy87AXFQR1uU9Oz95pcOADatg84lZddAhv50kkrW2y9XFalh9kisb ng26gv43wtWq9Cu3rA4XjQWX4mLdSuwFME0KfRy5Q5jxg2s/lbp0tsODVfjO8t9SF3or iVCY8y0XY+2fJ2am0roYDsFk9QpCMfS4syVRIn9SRixsmvYu/cqMaLGk5/qlz5yrVzFk QReyalVI0Vhl1Ki22bS/ErkrWvJVe1e2MXf43jfGr0Y/pobyboK5MibFhF4akkrQDew8 zmdbR8OSz71D7W+AQjc9ulyGNwkn6AMJh56rGt5/NNXMFhTmPchIEZx5nQdLtdXu3TFn HYlQ== X-Gm-Message-State: AOJu0YxJwdw8SrP1DsMWdEQPc0ok8weAXJjSO/7z6hwts40XRCJiQP6a GWEOHjnY91weafvjd4vw0ac= X-Google-Smtp-Source: AGHT+IHB8Dgmlza+u38qD643ri3DiUTOqK9L6CK0JVBufkfHlFy0t26xGOhQZRYBrjCa8x/2Wi/a0g== X-Received: by 2002:a5d:9cd5:0:b0:79f:d4e6:5175 with SMTP id w21-20020a5d9cd5000000b0079fd4e65175mr28324749iow.16.1697140121898; Thu, 12 Oct 2023 12:48:41 -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 h6-20020a5d9e06000000b007a25540c49bsm4307891ioh.27.2023.10.12.12.48.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Oct 2023 12:48:41 -0700 (PDT) From: Jim Cromie To: linux-kernel@vger.kernel.org, jbaron@akamai.com, gregkh@linuxfoundation.org Cc: david@redhat.com, lb@semihalf.com, linux@rasmusvillemoes.dk, joe@perches.com, mcgrof@kernel.org, Liam.Howlett@Oracle.com, linux-mm@kvack.org, Jim Cromie Subject: [RFC PATCH 05/10] dyndbg: avoid _ddebug.site in ddebug_condense_sites Date: Thu, 12 Oct 2023 13:48:29 -0600 Message-ID: <20231012194834.3288085-6-jim.cromie@gmail.com> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20231012194834.3288085-1-jim.cromie@gmail.com> References: <20231012194834.3288085-1-jim.cromie@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: A50FAA0006 X-Stat-Signature: p7d175thce8x9h77gaycedcwqznwhgkw X-HE-Tag: 1697140122-863254 X-HE-Meta: U2FsdGVkX19pgvkULbIZVLNZd4st3ZqkCkn1gYwdAIO1SHcs0hP4vyj78bcPhuqdJi7OlNglLw8S+/pwC7cZMs9PsgcqZQWaTYJPZLiEcVGlEX/DVqSKKX/FP8B4dW9z/zm1Y2uEMpgCtohTQMAyPRVGTV6nbsYhs+ayO/hofcrUWnBaGtkkYN1F1n78gxCaif1Q5mqsQJHjr7Ssnyq7e9wVQ2b2W3wH3WTpIACtDbr+EcmriFcMeNL3uy7+3WCVzz8CjZT7LCyHftGOVbGz4qeRTAi2sCVR8hrzTjkDmxwmm7RHDmlrygy1KgMi+2kWbVF6MiwNq2r0IC0t4vfAF4jCH7VnUaOrMAf7MwWx5UeRrLCgMI4gFKqC/0R4jjwxTloTHQPbicfV9xkW34OIGvuLlRjztdOZ9n6mco10JAq1v7YuuIai2FVg2tIrW8jEBLIIQFRwO1lIniNHJ9Ub63ppVBYeNM4yHgxzEOOXB+tho/0lXD/r57rpczjDoN8uq5mxY1LWEgnMAwFRNlXpZBGPMF2wnSaRAX2MjrLcO4zx8ebj6y+BGR9GZ8JJI0MxrKnwNe/AG24SL3zMSRCaxHCxn20rD7BNd45UyBHtj1kYXndhiM7/f4MgQDZgTFSaF2coKu+vWdcju7JvzcPNL/q0f0OjO/IDECaBAxn9oTM6/ZhFXXUd2LO99YhGGaMnieDlyKushiATP+mOA2GgjZbq/ViasGbWd2YkjXTMiOUfIneO71qdv3DlGiuzetf52339zX0LP8MLfa+YP2LxMXphW8OFv9Wqwvfr8HqE6ByAWcY/EJ1Vwg28ci9VISNfzJqwFHZqfGid3oBibnwP6pALhKLqFfGAHezcFxs7T6gKG1BFeD0mJchLMtiCpJfcrsKI8JLdHQbMQlVXPAxllpmV4frcXz/c3LQBXIvWcdlJrCMwgFjnn1TJxiaByi3azFsx6eIzvk1wLJI1/AN i7rG/Pnf xFOBi0xzzhY8xjAVK+BJCsg87ku9AIKE6I2Z9Shh8gG/azyBB2k1BO4mI15G2OECMFFKYLwr4Q4Z7q1lcw+7CEqjxnXxGH48HtjSfEX3ImwkkLTdwfPdrFbo3vTy2/HxuyX2hYbIwpRWB6K1Z3A5sVCKOtTY3MUVJtoRn5LcFGpvo3+q0+6VLpMQla850byd2EOyPkAeo7/2OkEkHBr6Lj+M4XD1hCHNYHDWRVnr83fgy1LJxGbnpdYdU2MaPdLiVqFlhdxC45wqmJgiv5EgyEyOec+LPHSttHYs6XuRtFFf2m/OVYp9UGPdaRaRD+D+kyOYIcvF+aNQt3zl+yXVixV2ZiUJ4nifYwccbI61Jt15TSV1utIzGPo4iq1PwCanFXzxSak6zaZBfxQ9NjyJHP9DbiDCawR6L8YKm8zyejfgyaCsMw/wPXcoUCw6H3U0/VBCwGevwOJ3II7jJTkI0GxKMjCaovkVuA8CXBWXSamXM7yvu52nmqyShYs1BSFgm84uW3qVRr0De9CbjfihDXDJSaefGHlTMIgwPjoYtfuRxqCx+d7/0My/fzT4jBzl2uIFnT1rAmo/M/yJ61e8HCgogTA== 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: Modify the for-loop in ddebug_condense_sites() to walk thru both vectors: descs, sites in parallel. This requires a 2nd set of cursor variables (*_ds) that mark the start-of-range in the sites vector for the intervals to be dd_store_range()d. So also rename the old cursors (*_dd) for better consistency and readability. This is a partial step. It still uses the desc_*() macros to provide the values, and the macros use the site pointer. Next, we replace the macros with site_*(), passing the *_ds vars. Signed-off-by: Jim Cromie --- lib/dynamic_debug.c | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c index 3dc17922a1d1..563d373224ba 100644 --- a/lib/dynamic_debug.c +++ b/lib/dynamic_debug.c @@ -1426,32 +1426,41 @@ static void dd_store_range(struct maple_tree *mt, const struct _ddebug *start, v4pr_info(" ok %s at %lx\n", val, first); } + static void ddebug_condense_sites(struct _ddebug_info *di) { - struct _ddebug *cur, *funcp, *filep, *modp; + struct _ddebug_site *cur_ds, *func_ds, *file_ds, *mod_ds; + struct _ddebug *cur_dd, *func_dd, *file_dd, *mod_dd; int i; - funcp = filep = modp = di->descs; - for_each_boxed_vector(di, descs, num_descs, i, cur) { + cur_dd = func_dd = file_dd = mod_dd = di->descs; + cur_ds = func_ds = file_ds = mod_ds = di->sites; + i = 0; + for (; i < di->num_descs; i++, cur_dd++, cur_ds++) { + + BUG_ON(site_function(cur_ds) != desc_function(cur_dd)); - if (!strcmp(desc_function(cur), desc_function(funcp))) + if (!strcmp(desc_function(cur_dd), desc_function(func_dd))) continue; - dd_store_range(&mt_funcs, funcp, cur, "func", desc_function(funcp)); - funcp = cur; + dd_store_range(&mt_funcs, func_dd, cur_dd, "func", desc_function(func_dd)); + func_dd = cur_dd; + func_ds = cur_ds; - if (!strcmp(desc_filename(cur), desc_filename(filep))) + if (!strcmp(desc_filename(cur_dd), desc_filename(file_dd))) continue; - dd_store_range(&mt_files, filep, cur, "file", desc_filename(filep)); - filep = cur; + dd_store_range(&mt_files, file_dd, cur_dd, "file", desc_filename(file_dd)); + file_dd = cur_dd; + file_ds = cur_ds; - if (!strcmp(desc_modname(cur), desc_modname(modp))) + if (!strcmp(desc_modname(cur_dd), desc_modname(mod_dd))) continue; - dd_store_range(&mt_mods, modp, cur, "mod", desc_modname(modp)); - modp = cur; + dd_store_range(&mt_mods, mod_dd, cur_dd, "mod", desc_modname(mod_dd)); + mod_dd = cur_dd; + mod_ds = cur_ds; } - dd_store_range(&mt_funcs, funcp, cur, "func:", desc_function(funcp)); - dd_store_range(&mt_files, filep, cur, "file:", desc_filename(filep)); - dd_store_range(&mt_mods, modp, cur, "mod:", desc_modname(modp)); + dd_store_range(&mt_funcs, func_dd, cur_dd, "func:", desc_function(func_dd)); + dd_store_range(&mt_files, file_dd, cur_dd, "file:", desc_filename(file_dd)); + dd_store_range(&mt_mods, mod_dd, cur_dd, "mod:", desc_modname(mod_dd)); } /* -- 2.41.0