Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp2397408ybv; Mon, 24 Feb 2020 04:36:25 -0800 (PST) X-Google-Smtp-Source: APXvYqxPvAg/tIf36Ua/Wy2cZV3LbOwXNKXtnxAidiIPCJs9ZaI9H5C8up6rGCdADyBozDnwMG12 X-Received: by 2002:a9d:4801:: with SMTP id c1mr41143918otf.258.1582547785234; Mon, 24 Feb 2020 04:36:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582547785; cv=none; d=google.com; s=arc-20160816; b=qevKl9dw6FYUYgcYBMbXZ/fOGggKR77UiMnq1Bpfhmkkm0dPO3RounRsu7aVI0FjSZ vdm0O6r8blD/MuzYi2ToW/GH0phnEhsooPwwyYTmjNDOEV17KzDkylyWMmRT7NgM3lCI iyvJuSkSLzwzQI2YS9xbtt1yR+Ec8fYEtY2hNewJ7algb8AT0WdEMwj/HdXo2oU5yuqM 9Fr5R7Es5sh3mCgDW+KLVn4aXADC56QE7XgZKTLHOCNJrPKMH+CSAvuyq84c0FOkV1ET EXsEEv2Oi2fGbJjDbn1c21+BaGzwXNaas+59yU40nsXeKOxV8TB47xut7tOe4aMqXGcS Ix3Q== 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=my+c3KBsPgzynSwlWdSBQo7WgTwmz0yazVFl0c29+sE=; b=e7CXvKRhCzMn7dK6ux77FId6cr7QGM+vYk7zx3niWxG6KnEKWhTqPrbf8tLwpVRg2h ODf9fnN1RRAmMom56eVdb2o72h09NkK5PxLtVRZHK/8j94FTAjj4mbxHom+ToWqc//1T SjEGlJP724BdOHWq/UzPYlE3LFtajv7Kykv23m7K7nb9fYIplldXi7xZEM/MvhWX7BFO ZhgV349Td52ru4KLYHfoiIfinLRbXq1XvX5erfjVPhDua18PHIjgTYK8xrzYGpP4N00e Hbeayno7FZkFbUlJWLak1VemrcbxEwC6MdQ0SCRm5PgB9xiVTpKXNtLHjnspgwSR/ifC voMQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@amazon.com header.s=amazon201209 header.b="gaUqh0/M"; 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 a4si5366725otq.98.2020.02.24.04.36.13; Mon, 24 Feb 2020 04:36:25 -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="gaUqh0/M"; 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 S1727378AbgBXMfF (ORCPT + 99 others); Mon, 24 Feb 2020 07:35:05 -0500 Received: from smtp-fw-9101.amazon.com ([207.171.184.25]:62294 "EHLO smtp-fw-9101.amazon.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726778AbgBXMfF (ORCPT ); Mon, 24 Feb 2020 07:35:05 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazon201209; t=1582547705; x=1614083705; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version; bh=my+c3KBsPgzynSwlWdSBQo7WgTwmz0yazVFl0c29+sE=; b=gaUqh0/MwM+Z5OpnZ94HVoEWmVGzf6JyDsWOwn51rNDyDpEB1fgkrn2/ Gx079/v0kBRfmDmzn3dr0UA1rA+UiABJyjT3DmyVTZSClXO+68ATGmDHP Bcd9JC9CdjVeLp1+l7VSfcNiqUA5z5zP1TwdxWTlYzhYH2/vw9dYIwNsX E=; IronPort-SDR: /1KkFdh7YSrm5z8t8RQvhPp8sjOX1rWZNybG4gMDYw9mHK8pYNv1pB16X1rWhw+RvOvE8bj2X5 r/x0+GFBPZpw== X-IronPort-AV: E=Sophos;i="5.70,480,1574121600"; d="scan'208";a="18696669" Received: from sea32-co-svc-lb4-vlan3.sea.corp.amazon.com (HELO email-inbound-relay-2a-119b4f96.us-west-2.amazon.com) ([10.47.23.38]) by smtp-border-fw-out-9101.sea19.amazon.com with ESMTP; 24 Feb 2020 12:35:04 +0000 Received: from EX13MTAUEA002.ant.amazon.com (pdx4-ws-svc-p6-lb7-vlan2.pdx.amazon.com [10.170.41.162]) by email-inbound-relay-2a-119b4f96.us-west-2.amazon.com (Postfix) with ESMTPS id 00BBF1A00DE; Mon, 24 Feb 2020 12:35:01 +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, 24 Feb 2020 12:35:01 +0000 Received: from u886c93fd17d25d.ant.amazon.com (10.43.162.53) by EX13D31EUA001.ant.amazon.com (10.43.165.15) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 24 Feb 2020 12:34:49 +0000 From: SeongJae Park To: CC: SeongJae Park , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v6 09/14] mm/damon: Add a tracepoint for result writing Date: Mon, 24 Feb 2020 13:30:42 +0100 Message-ID: <20200224123047.32506-10-sjpark@amazon.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200224123047.32506-1-sjpark@amazon.com> References: <20200224123047.32506-1-sjpark@amazon.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.43.162.53] X-ClientProxiedBy: EX13D19UWC003.ant.amazon.com (10.43.162.184) 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 facb1d7f121b..8faf3879f99e 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