Skip to content

Commit 07c65f4

Browse files
zhangwei(Jovi)torvalds
authored andcommitted
printk/tracing: rework console tracing
Commit 7ff9554 ("printk: convert byte-buffer to variable-length record buffer") removed start and end parameters from call_console_drivers, but those parameters still exist in include/trace/events/printk.h. Without start and end parameters handling, printk tracing became more simple as: trace_console(text, len); Signed-off-by: zhangwei(Jovi) <[email protected]> Acked-by: Steven Rostedt <[email protected]> Acked-by: Frederic Weisbecker <[email protected]> Cc: Kay Sievers <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
1 parent 2fb0815 commit 07c65f4

File tree

2 files changed

+7
-20
lines changed

2 files changed

+7
-20
lines changed

include/trace/events/printk.h

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -6,31 +6,18 @@
66

77
#include <linux/tracepoint.h>
88

9-
TRACE_EVENT_CONDITION(console,
10-
TP_PROTO(const char *log_buf, unsigned start, unsigned end,
11-
unsigned log_buf_len),
9+
TRACE_EVENT(console,
10+
TP_PROTO(const char *text, size_t len),
1211

13-
TP_ARGS(log_buf, start, end, log_buf_len),
14-
15-
TP_CONDITION(start != end),
12+
TP_ARGS(text, len),
1613

1714
TP_STRUCT__entry(
18-
__dynamic_array(char, msg, end - start + 1)
15+
__dynamic_array(char, msg, len + 1)
1916
),
2017

2118
TP_fast_assign(
22-
if ((start & (log_buf_len - 1)) > (end & (log_buf_len - 1))) {
23-
memcpy(__get_dynamic_array(msg),
24-
log_buf + (start & (log_buf_len - 1)),
25-
log_buf_len - (start & (log_buf_len - 1)));
26-
memcpy((char *)__get_dynamic_array(msg) +
27-
log_buf_len - (start & (log_buf_len - 1)),
28-
log_buf, end & (log_buf_len - 1));
29-
} else
30-
memcpy(__get_dynamic_array(msg),
31-
log_buf + (start & (log_buf_len - 1)),
32-
end - start);
33-
((char *)__get_dynamic_array(msg))[end - start] = 0;
19+
memcpy(__get_dynamic_array(msg), text, len);
20+
((char *)__get_dynamic_array(msg))[len] = 0;
3421
),
3522

3623
TP_printk("%s", __get_str(msg))

kernel/printk.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1265,7 +1265,7 @@ static void call_console_drivers(int level, const char *text, size_t len)
12651265
{
12661266
struct console *con;
12671267

1268-
trace_console(text, 0, len, len);
1268+
trace_console(text, len);
12691269

12701270
if (level >= console_loglevel && !ignore_loglevel)
12711271
return;

0 commit comments

Comments
 (0)