Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp3813142ybv; Mon, 10 Feb 2020 06:53:38 -0800 (PST) X-Google-Smtp-Source: APXvYqwXrN/hHE2Wn0TAgU2uePowxCEqrEN2m3HGBMA1K4wAQ0Xo0Zh2ASQm/6mbFK6+4yeLroYQ X-Received: by 2002:a9d:4d17:: with SMTP id n23mr1367872otf.85.1581346418400; Mon, 10 Feb 2020 06:53:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581346418; cv=none; d=google.com; s=arc-20160816; b=heJ03CCOHFjS6d2STATnbOldqE1zhp6fX9XRuUmvNcNAWNjs+ZkE1Wd71K5U1AMO5Q 1e4FMjlCu68Pnwr/Gc1aTaMQ8Tza6Bn6NuQtN60yTO4Hxdt6hAf8Jz8HwzhlA1Q2alH5 LeABvAj2Nid6ElgzP4Pxd8rZejYeuewBattWOOzPJww1XJqDg5xQhAjXIjIIWXMgppDS oLDHybJkPz/yeygZ82IMqjdGg1iZTibChcnllJFbIItlIz4RwBBUQU5mimmaDBek8bGG PXMoWdAls+s+4ni0zeYTVHyP6uVep2vQYocNeDirg5FyDu/dzdkhR1jO3P7RPGPuztm9 SrOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:ironport-sdr:dkim-signature; bh=sf7A0vfw3cQq8bhnPOhHviH9Sodji4zlA3P2YYS4bnM=; b=F6eNr1IEl03Yq/vNTrp2BV4sKflV2PRE1IZLYN0YMYbX7UX7m03iqO73/mMx03rEUU 1dxbu1jfRx1fgPrx0asW6CWxMbhIyJ5dafCjbOUXiKdB0XqTTkRGIrxCtwfjjIdAdiT1 LaS252JI4nWTFT4/m8SXJf8LeOL5sgsJRvz2jr+UAr0+pU2Lq8iKxX10Veivi5mY3+Wn TFIRCrGwCMF09DemAOVnRKZWLMg7Mk90HsMtAtVBKwsabVt0h7YDVR11cVDKStaGXfWc f+aoVZZ+do6XPFXImXrsyZYDfNsWcD1InJU3zBVvsc5WHHT5RKEACY0Mq7rRVfw5vzE3 gEMg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amazon.com header.s=amazon201209 header.b=dd6IDxbi; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s26si280625otp.172.2020.02.10.06.53.26; Mon, 10 Feb 2020 06:53:38 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@amazon.com header.s=amazon201209 header.b=dd6IDxbi; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=amazon.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728555AbgBJOwo (ORCPT + 99 others); Mon, 10 Feb 2020 09:52:44 -0500 Received: from smtp-fw-2101.amazon.com ([72.21.196.25]:20792 "EHLO smtp-fw-2101.amazon.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727810AbgBJOwo (ORCPT ); Mon, 10 Feb 2020 09:52:44 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1581346363; x=1612882363; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=sf7A0vfw3cQq8bhnPOhHviH9Sodji4zlA3P2YYS4bnM=; b=dd6IDxbiAwruWbOZWHCl/ny2JQe3JNirOnBtlh4VdU20GG8CyrvKSepw VzUSznk4XoeESB51iKfRcY1MsC+6Cys6+BsJWMzFaHOCgTkoDVmNi0Lvu YQENYX4ALPe0xl3Jut8wDfPkmMbJrwBaxKWXy4dLHoJ04BYmwYWeoRwsb w=; IronPort-SDR: frgHkJRMOFB8KaAC+ydJrMzf+Jit2A8V5ZGQDdePCRlnryGiuoKZTtj/aqka6umOxzdJUrlRIx n6EwplQIGy6g== X-IronPort-AV: E=Sophos;i="5.70,425,1574121600"; d="scan'208";a="16473270" Received: from iad12-co-svc-p1-lb1-vlan2.amazon.com (HELO email-inbound-relay-1e-62350142.us-east-1.amazon.com) ([10.43.8.2]) by smtp-border-fw-out-2101.iad2.amazon.com with ESMTP; 10 Feb 2020 14:52:41 +0000 Received: from EX13MTAUEA002.ant.amazon.com (iad55-ws-svc-p15-lb9-vlan3.iad.amazon.com [10.40.159.166]) by email-inbound-relay-1e-62350142.us-east-1.amazon.com (Postfix) with ESMTPS id 53AF3A2331; Mon, 10 Feb 2020 14:52:34 +0000 (UTC) Received: from EX13D31EUA001.ant.amazon.com (10.43.165.15) by EX13MTAUEA002.ant.amazon.com (10.43.61.77) with Microsoft SMTP Server (TLS) id 15.0.1236.3; Mon, 10 Feb 2020 14:52:33 +0000 Received: from u886c93fd17d25d.ant.amazon.com (10.43.162.69) by EX13D31EUA001.ant.amazon.com (10.43.165.15) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 10 Feb 2020 14:52:21 +0000 From: To: CC: SeongJae Park , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v4 07/11] mm/damon: Add a tracepoint for result writing Date: Mon, 10 Feb 2020 15:52:06 +0100 Message-ID: <20200210145206.27950-1-sjpark@amazon.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200210144812.26845-1-sjpark@amazon.com> References: <20200210144812.26845-1-sjpark@amazon.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.43.162.69] X-ClientProxiedBy: EX13D27UWB004.ant.amazon.com (10.43.161.101) To EX13D31EUA001.ant.amazon.com (10.43.165.15) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: SeongJae Park This commit adds a tracepoint for DAMON's result buffer writing. It is called for each writing of the DAMON results and print the result data. Therefore, it would be used to easily integrated with other tracepoint supporting tracers such as perf. Signed-off-by: SeongJae Park --- include/trace/events/damon.h | 32 ++++++++++++++++++++++++++++++++ mm/damon.c | 4 ++++ 2 files changed, 36 insertions(+) create mode 100644 include/trace/events/damon.h diff --git a/include/trace/events/damon.h b/include/trace/events/damon.h new file mode 100644 index 000000000000..fb33993620ce --- /dev/null +++ b/include/trace/events/damon.h @@ -0,0 +1,32 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#undef TRACE_SYSTEM +#define TRACE_SYSTEM damon + +#if !defined(_TRACE_DAMON_H) || defined(TRACE_HEADER_MULTI_READ) +#define _TRACE_DAMON_H + +#include +#include + +TRACE_EVENT(damon_write_rbuf, + + TP_PROTO(void *buf, const ssize_t sz), + + TP_ARGS(buf, sz), + + TP_STRUCT__entry( + __dynamic_array(char, buf, sz) + ), + + TP_fast_assign( + memcpy(__get_dynamic_array(buf), buf, sz); + ), + + TP_printk("dat=%s", __print_hex(__get_dynamic_array(buf), + __get_dynamic_array_len(buf))) +); + +#endif /* _TRACE_DAMON_H */ + +/* This part must be outside protection */ +#include diff --git a/mm/damon.c b/mm/damon.c index 748cd8537fee..02bfa12940ea 100644 --- a/mm/damon.c +++ b/mm/damon.c @@ -9,6 +9,8 @@ #define pr_fmt(fmt) "damon: " fmt +#define CREATE_TRACE_POINTS + #include #include #include @@ -20,6 +22,7 @@ #include #include #include +#include #define damon_get_task_struct(t) \ (get_pid_task(find_vpid(t->pid), PIDTYPE_PID)) @@ -553,6 +556,7 @@ static void damon_flush_rbuffer(struct damon_ctx *ctx) */ static void damon_write_rbuf(struct damon_ctx *ctx, void *data, ssize_t size) { + trace_damon_write_rbuf(data, size); if (!ctx->rbuf_len || !ctx->rbuf) return; if (ctx->rbuf_offset + size > ctx->rbuf_len) -- 2.17.1