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 BEDA3C83F10 for ; Sat, 12 Jul 2025 19:50:40 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E973F6B007B; Sat, 12 Jul 2025 15:50:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DF76E6B00BC; Sat, 12 Jul 2025 15:50:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CE87A6B00BE; Sat, 12 Jul 2025 15:50:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id B6E236B007B for ; Sat, 12 Jul 2025 15:50:30 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 7C8A580290 for ; Sat, 12 Jul 2025 19:50:30 +0000 (UTC) X-FDA: 83656654620.02.B87748C Received: from sea.source.kernel.org (sea.source.kernel.org [172.234.252.31]) by imf19.hostedemail.com (Postfix) with ESMTP id CD8BC1A0004 for ; Sat, 12 Jul 2025 19:50:28 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=uoHT9o7n; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf19.hostedemail.com: domain of sj@kernel.org designates 172.234.252.31 as permitted sender) smtp.mailfrom=sj@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752349828; a=rsa-sha256; cv=none; b=ynFtL75lQSZ0C6IRWBMWkJIPli/8H4bxKUG+7aoFVSbtDljqncyu3vqQDrsgxa/PMaWDPL 2+sIBaW5pB0kmRJydWPr3RncZcWkh7LWtOvH/W7U9Fkzy/xIrnmdZWdRHBh4Lgs03QcNfa 58sInfVXaw+oC2X8pqTN3XZZ/xFi+Fw= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=uoHT9o7n; dmarc=pass (policy=quarantine) header.from=kernel.org; spf=pass (imf19.hostedemail.com: domain of sj@kernel.org designates 172.234.252.31 as permitted sender) smtp.mailfrom=sj@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752349828; 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=8kj6ClMzthAmhdLdmNqoT1lPQIcl20OVdJbfPwRnou4=; b=oy7a25AUjWyMBe/zY2HZ/A7iRXb97oQ1coUKN4yswkraKeDO7ZIU6PAw8yBlmhwGBUg/27 880ZzE6S+l/93PYS4RWFLND98Xl6SyrxjcTZ53KbEa8zPuMnP/era6Ao/pEvI6JucJ53Dp 1qwe1kGJCd99Ko/Y4UN0UKfqQLoHcsY= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sea.source.kernel.org (Postfix) with ESMTP id D584446C44; Sat, 12 Jul 2025 19:50:27 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9420EC4CEF7; Sat, 12 Jul 2025 19:50:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1752349827; bh=OcwCWpW+gdDxIZHIlmwdIcrtDzrp/aZZNpUe+KYMNyw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=uoHT9o7neTDGCfTetH92f6SPSSQQ4gZ83vz4dRrQm7cPm00O2608YsjoNdxSCb1tw lekOjYFQQngnDAaSVPYl8R4ZeTmp7RA46ZFwRfACQsQJgrLIoP2hkr/89WpQ4CM2pb XdwFWc1rtMQpAFNM9KRCD0R1mKyxndDzJO1iA5GPx/LKho6AIM7PHhJVNOyOeT5a+t YLKnKUZc4PbERRpJ+tKccu9JEzhBvLHkQ/CyG8U1seatzpVS/NvmbxnzpRUZ4rLpzw ygbhVTty2PtzYFabUfFcCQLFlIoWXpJUi4IMTHb5IoYlKEgTBcyT9cp09wa51600UB d4GOFX4fSjuHA== From: SeongJae Park To: Andrew Morton Cc: SeongJae Park , damon@lists.linux.dev, kernel-team@meta.com, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH 06/14] samples/damon/prcl: use damon_call() repeat mode instead of damon_callback Date: Sat, 12 Jul 2025 12:50:08 -0700 Message-Id: <20250712195016.151108-7-sj@kernel.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250712195016.151108-1-sj@kernel.org> References: <20250712195016.151108-1-sj@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: CD8BC1A0004 X-Stat-Signature: f1tabkki1qhimuccotcbaa4p8xex3b71 X-Rspam-User: X-HE-Tag: 1752349828-769388 X-HE-Meta: U2FsdGVkX19Ux/n8HHBZjpmhzFm2XS/q2T8Bs1WNhc+6dzlQGQxALpN0EJR5yiBD23D3odOXRZcoaTG3zh3MffpLU94UpNoL1rGQhDu0rfUCLeQHd3exa/lV4DhaNul5kk57RDnvOdfWMkT/6/xkJPmq64YQFPo9JW+0co5jFYjxITWCNlOB0ka1GzJDWbYOKvzitVcNyChN4JnRSpV5Mv9HConJvGeI35Sb5L7LR+Uy8CcNZrWM3d1ln43Fv6lTbhcNpLVUyK9WBIK6nQH0L8U3WAsr71qsnn7kSkHxZOU6sVxUGH6Uxgi2ZoXduWKqqGQpVh04x5W7SBXuF9Cb5vLjuiVYhb9dtYcZgp5qPZu6Q7nIPBEt4A/QaAtPFJnU91HusbYRp3Vk+Rq6b/zqB53kbsj+8M2+ZEYz0SPy3G7Mxwg3AvBH0uZVRyafuoIfMLDB93W0GJWDPQgOm4NInZX/jo6f2qkJKGddI3QtH+rliHOt7IUORtvRm6BXZryHFhBVlLI3a5FVGpYif//Gr9oNQv3DROk5Tid/VjMcYlNSXW01dunqpvZPM1k+lFYQnNiU72+CcxrUuX0kGBPb3K4YBAawcicvRwIQt40okWdwIrCi2tWe8jPEkJt0EUBg9kqnxvSi3WvhkapFE8rEzJ+MyA52aunURem2LtiWs8E9sUPZMh/tWuZhCA5kxPxi7L2namP6B2vUDo7EzF9uzl2bozlyf1YJ11IH7LnyDGQXw1s+kkSXe5Bvv/qZPgHXEdBJqBuOgYs0Ma/viXIx9DXnlQsY38cpWFTDrzusGyExkovpcB/tFctsm9OhseH72nGgIiXyhC4ZGCvLe6KTEBBHqPbpnXqD1HjOqrwHOxZ5SO4bzZxOD3mrdI++95SK85shfJgT2U5SZdQQ36Oeb7pT2fBLF4X+uxvrO6LpwA/Q3kwJZddkTwF7M82YLwRm6M5AjzHiFHmkpuNUvcP I5CAq8TB IoV86n/vshBOsnd+iDvlRWTwRVrrVn3iHaQAMBUoEXfwNgkIot0WO0uVBJkyl2ErwGX/yCIAENlwqSQbBLYXhSklPGgmv6XNvvw2y9xNSv4lAgYg1s3EMltGuLMKD7IQUGuSI0ZLknfSZ8zWo6Z1FIc0OpKHYF6/YdWDla9wJGzzAK2QvBkN5BwQ+bHaXsWeG4jJnjtIIMgOhcbldjG/CeHhrd/BZpZlkPxj8sL5PmZ1+1r/U8HsOE2x0pBpCgn/XsNIdinwPZOTeN7yDENZDD3fv45mhLDbLCDKTleXfvR2cprA9nQXr2kTgRA== 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: prcl uses damon_callback for periodically reading DAMON internal data. Use its alternative, damon_call() repeat mode. Signed-off-by: SeongJae Park --- samples/damon/prcl.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/samples/damon/prcl.c b/samples/damon/prcl.c index 8a312dba7691..25a751a67b2d 100644 --- a/samples/damon/prcl.c +++ b/samples/damon/prcl.c @@ -34,8 +34,9 @@ MODULE_PARM_DESC(enabled, "Enable or disable DAMON_SAMPLE_PRCL"); static struct damon_ctx *ctx; static struct pid *target_pidp; -static int damon_sample_prcl_after_aggregate(struct damon_ctx *c) +static int damon_sample_prcl_repeat_call_fn(void *data) { + struct damon_ctx *c = data; struct damon_target *t; damon_for_each_target(t, c) { @@ -51,10 +52,16 @@ static int damon_sample_prcl_after_aggregate(struct damon_ctx *c) return 0; } +static struct damon_call_control repeat_call_control = { + .fn = damon_sample_prcl_repeat_call_fn, + .repeat = true, +}; + static int damon_sample_prcl_start(void) { struct damon_target *target; struct damos *scheme; + int err; pr_info("start\n"); @@ -79,8 +86,6 @@ static int damon_sample_prcl_start(void) } target->pid = target_pidp; - ctx->callback.after_aggregation = damon_sample_prcl_after_aggregate; - scheme = damon_new_scheme( &(struct damos_access_pattern) { .min_sz_region = PAGE_SIZE, @@ -100,7 +105,12 @@ static int damon_sample_prcl_start(void) } damon_set_schemes(ctx, &scheme, 1); - return damon_start(&ctx, 1, true); + err = damon_start(&ctx, 1, true); + if (err) + return err; + + repeat_call_control.data = ctx; + return damon_call(ctx, &repeat_call_control); } static void damon_sample_prcl_stop(void) -- 2.39.5