From: Tingwei Zhang <tingwei@codeaurora.org>
To: Steven Rostedt <rostedt@goodmis.org>,
Ingo Molnar <mingo@redhat.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Alexandre Torgue <alexandre.torgue@st.com>
Cc: tsoni@codeaurora.org,
Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
Mathieu Poirier <mathieu.poirier@linaro.org>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
Mao Jinlong <jinlmao@codeaurora.org>,
linux-kernel@vger.kernel.org,
Tingwei Zhang <tingwei@codeaurora.org>,
linux-stm32@st-md-mailman.stormreply.com,
linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 4/6] tracing: add trace_export support for trace_marker
Date: Thu, 3 Sep 2020 08:17:04 +0800 [thread overview]
Message-ID: <20200903001706.28147-5-tingwei@codeaurora.org> (raw)
In-Reply-To: <20200903001706.28147-1-tingwei@codeaurora.org>
Add the support to route trace_marker buffer to other destination
via trace_export.
Signed-off-by: Tingwei Zhang <tingwei@codeaurora.org>
Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
include/linux/trace.h | 1 +
kernel/trace/trace.c | 9 +++++++++
2 files changed, 10 insertions(+)
diff --git a/include/linux/trace.h b/include/linux/trace.h
index 5a01eeffb254..80b7df68bc0f 100644
--- a/include/linux/trace.h
+++ b/include/linux/trace.h
@@ -6,6 +6,7 @@
#define TRACE_EXPORT_FUNCTION BIT(0)
#define TRACE_EXPORT_EVENT BIT(1)
+#define TRACE_EXPORT_MARKER BIT(2)
/*
* The trace export - an export of Ftrace output. The trace_export
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 2f9302a8b322..67993abda394 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -271,6 +271,7 @@ static struct trace_export __rcu *ftrace_exports_list __read_mostly;
static DEFINE_STATIC_KEY_FALSE(trace_function_exports_enabled);
static DEFINE_STATIC_KEY_FALSE(trace_event_exports_enabled);
+static DEFINE_STATIC_KEY_FALSE(trace_marker_exports_enabled);
static inline void ftrace_exports_enable(struct trace_export *export)
{
@@ -279,6 +280,9 @@ static inline void ftrace_exports_enable(struct trace_export *export)
if (export->flags & TRACE_EXPORT_EVENT)
static_branch_inc(&trace_event_exports_enabled);
+
+ if (export->flags & TRACE_EXPORT_MARKER)
+ static_branch_inc(&trace_marker_exports_enabled);
}
static inline void ftrace_exports_disable(struct trace_export *export)
@@ -288,6 +292,9 @@ static inline void ftrace_exports_disable(struct trace_export *export)
if (export->flags & TRACE_EXPORT_EVENT)
static_branch_dec(&trace_event_exports_enabled);
+
+ if (export->flags & TRACE_EXPORT_MARKER)
+ static_branch_dec(&trace_marker_exports_enabled);
}
static void ftrace_exports(struct ring_buffer_event *event, int flag)
@@ -6648,6 +6655,8 @@ tracing_mark_write(struct file *filp, const char __user *ubuf,
} else
entry->buf[cnt] = '\0';
+ if (static_branch_unlikely(&trace_marker_exports_enabled))
+ ftrace_exports(event, TRACE_EXPORT_MARKER);
__buffer_unlock_commit(buffer, event);
if (tt)
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Tingwei Zhang <tingwei@codeaurora.org>
To: Steven Rostedt <rostedt@goodmis.org>,
Ingo Molnar <mingo@redhat.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Maxime Coquelin <mcoquelin.stm32@gmail.com>,
Alexandre Torgue <alexandre.torgue@st.com>
Cc: Tingwei Zhang <tingwei@codeaurora.org>,
Mathieu Poirier <mathieu.poirier@linaro.org>,
Suzuki K Poulose <suzuki.poulose@arm.com>,
tsoni@codeaurora.org,
Sai Prakash Ranjan <saiprakash.ranjan@codeaurora.org>,
Mao Jinlong <jinlmao@codeaurora.org>,
linux-kernel@vger.kernel.org,
linux-stm32@st-md-mailman.stormreply.com,
linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 4/6] tracing: add trace_export support for trace_marker
Date: Thu, 3 Sep 2020 08:17:04 +0800 [thread overview]
Message-ID: <20200903001706.28147-5-tingwei@codeaurora.org> (raw)
In-Reply-To: <20200903001706.28147-1-tingwei@codeaurora.org>
Add the support to route trace_marker buffer to other destination
via trace_export.
Signed-off-by: Tingwei Zhang <tingwei@codeaurora.org>
Reviewed-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
include/linux/trace.h | 1 +
kernel/trace/trace.c | 9 +++++++++
2 files changed, 10 insertions(+)
diff --git a/include/linux/trace.h b/include/linux/trace.h
index 5a01eeffb254..80b7df68bc0f 100644
--- a/include/linux/trace.h
+++ b/include/linux/trace.h
@@ -6,6 +6,7 @@
#define TRACE_EXPORT_FUNCTION BIT(0)
#define TRACE_EXPORT_EVENT BIT(1)
+#define TRACE_EXPORT_MARKER BIT(2)
/*
* The trace export - an export of Ftrace output. The trace_export
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 2f9302a8b322..67993abda394 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -271,6 +271,7 @@ static struct trace_export __rcu *ftrace_exports_list __read_mostly;
static DEFINE_STATIC_KEY_FALSE(trace_function_exports_enabled);
static DEFINE_STATIC_KEY_FALSE(trace_event_exports_enabled);
+static DEFINE_STATIC_KEY_FALSE(trace_marker_exports_enabled);
static inline void ftrace_exports_enable(struct trace_export *export)
{
@@ -279,6 +280,9 @@ static inline void ftrace_exports_enable(struct trace_export *export)
if (export->flags & TRACE_EXPORT_EVENT)
static_branch_inc(&trace_event_exports_enabled);
+
+ if (export->flags & TRACE_EXPORT_MARKER)
+ static_branch_inc(&trace_marker_exports_enabled);
}
static inline void ftrace_exports_disable(struct trace_export *export)
@@ -288,6 +292,9 @@ static inline void ftrace_exports_disable(struct trace_export *export)
if (export->flags & TRACE_EXPORT_EVENT)
static_branch_dec(&trace_event_exports_enabled);
+
+ if (export->flags & TRACE_EXPORT_MARKER)
+ static_branch_dec(&trace_marker_exports_enabled);
}
static void ftrace_exports(struct ring_buffer_event *event, int flag)
@@ -6648,6 +6655,8 @@ tracing_mark_write(struct file *filp, const char __user *ubuf,
} else
entry->buf[cnt] = '\0';
+ if (static_branch_unlikely(&trace_marker_exports_enabled))
+ ftrace_exports(event, TRACE_EXPORT_MARKER);
__buffer_unlock_commit(buffer, event);
if (tt)
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
next prev parent reply other threads:[~2020-09-03 0:19 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-03 0:17 [PATCH v3 0/6] tracing: export event trace and trace_marker Tingwei Zhang
2020-09-03 0:17 ` Tingwei Zhang
2020-09-03 0:17 ` [PATCH v3 1/6] stm class: ftrace: change dependency to TRACING Tingwei Zhang
2020-09-03 0:17 ` Tingwei Zhang
2020-09-03 0:17 ` [PATCH v3 2/6] tracing: add flag to control different traces Tingwei Zhang
2020-09-03 0:17 ` Tingwei Zhang
2020-09-03 0:17 ` [PATCH v3 3/6] tracing: add trace_export support for event trace Tingwei Zhang
2020-09-03 0:17 ` Tingwei Zhang
2020-09-03 0:17 ` Tingwei Zhang [this message]
2020-09-03 0:17 ` [PATCH v3 4/6] tracing: add trace_export support for trace_marker Tingwei Zhang
2020-09-03 0:17 ` [PATCH v3 5/6] stm class: ftrace: enable supported trace export flag Tingwei Zhang
2020-09-03 0:17 ` Tingwei Zhang
2020-09-03 0:17 ` [PATCH v3 6/6] stm class: ftrace: use different channel accroding to CPU Tingwei Zhang
2020-09-03 0:17 ` Tingwei Zhang
2020-09-18 12:45 ` Alexander Shishkin
2020-09-18 12:45 ` Alexander Shishkin
2020-09-23 4:39 ` Tingwei Zhang
2020-09-23 4:39 ` Tingwei Zhang
2020-09-14 23:27 ` [PATCH v3 0/6] tracing: export event trace and trace_marker Tingwei Zhang
2020-09-14 23:27 ` Tingwei Zhang
2020-09-18 14:26 ` Alexander Shishkin
2020-09-18 14:26 ` Alexander Shishkin
-- strict thread matches above, loose matches on Subject: below --
2020-08-13 1:45 Tingwei Zhang
2020-08-13 1:45 ` [PATCH v3 4/6] tracing: add trace_export support for trace_marker Tingwei Zhang
2020-08-11 3:57 [PATCH v3 0/6] tracing: export event trace and trace_marker Tingwei Zhang
2020-08-11 3:57 ` [PATCH v3 4/6] tracing: add trace_export support for trace_marker Tingwei Zhang
2020-07-28 1:33 [PATCH v3 0/6] tracing: export event trace and trace_marker Tingwei Zhang
2020-07-28 1:33 ` [PATCH v3 4/6] tracing: add trace_export support for trace_marker Tingwei Zhang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200903001706.28147-5-tingwei@codeaurora.org \
--to=tingwei@codeaurora.org \
--cc=alexander.shishkin@linux.intel.com \
--cc=alexandre.torgue@st.com \
--cc=jinlmao@codeaurora.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=mathieu.poirier@linaro.org \
--cc=mcoquelin.stm32@gmail.com \
--cc=mingo@redhat.com \
--cc=rostedt@goodmis.org \
--cc=saiprakash.ranjan@codeaurora.org \
--cc=suzuki.poulose@arm.com \
--cc=tsoni@codeaurora.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.