From patchwork Wed Feb 26 06:36:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SeongJae Park X-Patchwork-Id: 13991602 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 4414DC021B8 for ; Wed, 26 Feb 2025 06:37:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1057D280015; Wed, 26 Feb 2025 01:37:11 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id F310F280007; Wed, 26 Feb 2025 01:37:10 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DD3C8280015; Wed, 26 Feb 2025 01:37:10 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id B4825280007 for ; Wed, 26 Feb 2025 01:37:10 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 722231A0C72 for ; Wed, 26 Feb 2025 06:37:10 +0000 (UTC) X-FDA: 83161138620.22.7F92211 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf24.hostedemail.com (Postfix) with ESMTP id BA52D18000C for ; Wed, 26 Feb 2025 06:37:08 +0000 (UTC) Authentication-Results: imf24.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=pG7uDphF; spf=pass (imf24.hostedemail.com: domain of sj@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740551828; 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=jG/3GmVvHU+rIRhI9NVwZg3TXV+r07MMid5LIJ3YM58=; b=AZjosdo/iCvNPCTdrYupm8zd67D15+DB/ZCmynBWiNL2KusKr8nKu8S0jHD7J3ezC0Z5bL vjhO1MoCt2g0Th5mwz0lbsufawixsfAwrq+uzmGqQOdDfghc48W8fDBOgWlNfgbhOigbcX uUhwIJ1FRT6HLLs65hevFL17uvWlLL8= ARC-Authentication-Results: i=1; imf24.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=pG7uDphF; spf=pass (imf24.hostedemail.com: domain of sj@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=sj@kernel.org; dmarc=pass (policy=quarantine) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740551828; a=rsa-sha256; cv=none; b=2yCFGYcFETLYDOdCjG8vdMaHU+xbPbJ5saw+qERkz21aDJgGxQOTzu04st0l4KnbXigsV2 8Y8Z9tpQAe0+oEBj3PqeGt5WBOgQfYt/Lm3HNFIfE9hP2z6d7WWCIPMzkA3nVoAtr0rxas Q9X+gmvpfDjmmUfu7ku8AFcVEEkRJ9Q= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 965CB5C5B3F; Wed, 26 Feb 2025 06:36:29 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 29484C4CED6; Wed, 26 Feb 2025 06:37:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1740551828; bh=0JELExNnHyeZjbeP5ZoxjubmzZrKIkH6IvMexJsNwbs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=pG7uDphFQhxUNLwpk3/l2bizP+t02fv/8iSWqdIx3jv5WH+6lNDCOI7SFur64oCT8 J74ndxyjuJMt7aHCM4EyDV3q0OwVWBneiXZQkCfslrPhaqeVCkFu/1WAMRxkMiHOOM SQChpQWk/q96/Fu+jSgqmBINCXbmOKuQYvAUM2fWwirYqQmZY5cJWRpAa7sDK4Ios7 2RIt1aw29LGdueGRMwQRPSuo741vZsF8C1QCw3tJbhzVA7U2n+ACJNOgSTd7V8Ctl+ q9YQpLx8CUfcQ2+O2B4lMv88KXkZkBiXwvFz0OieBicaTO7zO0JYI+vT8MxAMsIi/P nO/Kos09Tn5lQ== From: SeongJae Park To: Cc: SeongJae Park , Andrew Morton , damon@lists.linux.dev, kernel-team@meta.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: [RFC PATCH 12/13] mm/damon: remove damon_callback->before_damos_apply Date: Tue, 25 Feb 2025 22:36:50 -0800 Message-Id: <20250226063651.513178-13-sj@kernel.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250226063651.513178-1-sj@kernel.org> References: <20250226063651.513178-1-sj@kernel.org> MIME-Version: 1.0 X-Rspam-User: X-Rspamd-Queue-Id: BA52D18000C X-Stat-Signature: pxeqdctn8euezwhemrwj349pagytx7g1 X-Rspamd-Server: rspam03 X-HE-Tag: 1740551828-391603 X-HE-Meta: U2FsdGVkX1+iIC7tAE/quZESfx2iaUDb+jboxg0cyi3hSuetIf+Y8gHKPIoqDbZPqyIN4pD9XIJksyotb+UTb5dnfm3fBRPLR1t/JQtng7wLSAFhbhocX7La+lXyozhX11qUIxYxA6yUH7HL0WkOb+sqCibzUN6Ez3lkCts7ajnKhEC+3/MoTFpiSF1quZSWkwW0vNYiaU2OHSJ3WXdRczADHpKPNe0mWCxtycoLmJOL6sE8Jhu0qIbvBzw867rqtI5vwdV8MxNIFTVSih+0fA5o69nb/sotqKDMNKkal1WwAayLG+wZqms7l+BR1N4HWpoVESLPP+uaAsqfMuWcXptHAexU1gj2obLE+0s0pdCQgDqLNFCeAt90OQ/SEn3T7CsuAqKknuFMe6cIG0mXiMSPNJyzqGksc/A1pESzyzSMt6EoMDMGmSXglzhhaH8QnDJIGBL9u6A2+RtVsWevzT1djUn3YOiqHnGR2VkM0C9BzfbJhXQZ3xFj88jNrllykMnRqRFilPbXtyKTngcDqBHJlKmpZe2FPMjEuQsRsBkMRi47QJ6uJ7UOyFiV5KbWHBz/mNq7bM+qL1QGn4FqX5izyscjoUSqB4z8fIJTtGay3t+JObrJ6Ugit5Ir6QZt5ovj/NDNL7XswhOqwxfDtH0p1Twh2ZKkzPfBwDwEHN6DEjyy3oIkTpbOcHrqrHPCEXP2hSZeo6+RIcLuSfIlFyiYmFD63cWTEYcYh6fN/9Rk+2dvaRypeIrWIXiD2a1ThbHNsNjsGQ0XljUnY8FrI369TtWM25EQoWBqvnBcNvnXycfZJQTRwRwnugAHizYGJssp3fa2ov5/BX4eA3D5zubWX/VdWuvtz+HBOKPeNHiqcEt8MMMhU1fJWR5sJh62zkgy53ne1uYYTVOls6NiGEuwsnI4PE9dsyRWDczHFtjynHSSmkKjPgvCKISIqpfOEKeU55O8t6wZUPk70+U Pj3Bntq2 9EsMyREgJUXmyuLQwdQPNe3AfM1jHdFupO3JZCSy9gkSyua/zj3Kyeo2vn1XoEdABs6DFs4Zt0CnlnNg5Tf4VUITNSOHhTizKaQDW3DcZnHlSdxWrDx6ehEc7nnZltTQg10BJvno69SkPa9Fi6QfBaaceAef09LixofG3POwPwOtSMDKz41eOYiCLZ1mjWn7GIuJv+X3GhCZxJ49+QDWVyP1huY6QUsqCn1OhLr/JyQRq+HKlgkTBuxzB3nw+sQILpgLijuqg9+v23HkSVU8Tm7QcSg== 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: The hook was introduced to let DAMON kernel API users access DAMOS schemes-eligible regions in a safe way. Now it is no more used by anyone, and the functionality is provided in a better way by damos_walk(). Remove it. Signed-off-by: SeongJae Park --- include/linux/damon.h | 5 ----- mm/damon/core.c | 13 ++++--------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/include/linux/damon.h b/include/linux/damon.h index c9abacf16d88..2808ea07e1cc 100644 --- a/include/linux/damon.h +++ b/include/linux/damon.h @@ -600,7 +600,6 @@ struct damon_operations { * * @after_wmarks_check: Called after each schemes' watermarks check. * @after_aggregation: Called after each aggregation. - * @before_damos_apply: Called before applying DAMOS action. * @before_terminate: Called before terminating the monitoring. * * The monitoring thread (&damon_ctx.kdamond) calls @before_terminate just @@ -621,10 +620,6 @@ struct damon_operations { struct damon_callback { int (*after_wmarks_check)(struct damon_ctx *context); int (*after_aggregation)(struct damon_ctx *context); - int (*before_damos_apply)(struct damon_ctx *context, - struct damon_target *target, - struct damon_region *region, - struct damos *scheme); void (*before_terminate)(struct damon_ctx *context); }; diff --git a/mm/damon/core.c b/mm/damon/core.c index 14e4122464a1..22f90666fe16 100644 --- a/mm/damon/core.c +++ b/mm/damon/core.c @@ -1723,7 +1723,6 @@ static void damos_apply_scheme(struct damon_ctx *c, struct damon_target *t, struct timespec64 begin, end; unsigned long sz_applied = 0; unsigned long sz_ops_filter_passed = 0; - int err = 0; /* * We plan to support multiple context per kdamond, as DAMON sysfs * implies with 'nr_contexts' file. Nevertheless, only single context @@ -1763,14 +1762,10 @@ static void damos_apply_scheme(struct damon_ctx *c, struct damon_target *t, if (damos_filter_out(c, t, r, s)) return; ktime_get_coarse_ts64(&begin); - if (c->callback.before_damos_apply) - err = c->callback.before_damos_apply(c, t, r, s); - if (!err) { - trace_damos_before_apply(cidx, sidx, tidx, r, - damon_nr_regions(t), do_trace); - sz_applied = c->ops.apply_scheme(c, t, r, s, - &sz_ops_filter_passed); - } + trace_damos_before_apply(cidx, sidx, tidx, r, + damon_nr_regions(t), do_trace); + sz_applied = c->ops.apply_scheme(c, t, r, s, + &sz_ops_filter_passed); damos_walk_call_walk(c, t, r, s, sz_ops_filter_passed); ktime_get_coarse_ts64(&end); quota->total_charged_ns += timespec64_to_ns(&end) -