diff options
author | Steven Rostedt (Red Hat) <rostedt@goodmis.org> | 2014-11-14 23:49:41 +0300 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2014-11-20 06:01:15 +0300 |
commit | 5ac48378414dccca735897c4d7f4e19987c8977c (patch) | |
tree | 9cf5c11dddd8081327d7e7f8a68a9e47613adcfa /kernel/trace/trace_seq.c | |
parent | 74f06bb72347302a19aac087314388ebd0e4fee9 (diff) | |
download | linux-5ac48378414dccca735897c4d7f4e19987c8977c.tar.xz |
tracing: Use trace_seq_used() and seq_buf_used() instead of len
As the seq_buf->len will soon be +1 size when there's an overflow, we
must use trace_seq_used() or seq_buf_used() methods to get the real
length. This will prevent buffer overflow issues if just the len
of the seq_buf descriptor is used to copy memory.
Link: http://lkml.kernel.org/r/20141114121911.09ba3d38@gandalf.local.home
Reported-by: Petr Mladek <pmladek@suse.cz>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace_seq.c')
-rw-r--r-- | kernel/trace/trace_seq.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/trace/trace_seq.c b/kernel/trace/trace_seq.c index 74cacc930c24..f8b45d8792f9 100644 --- a/kernel/trace/trace_seq.c +++ b/kernel/trace/trace_seq.c @@ -30,7 +30,7 @@ #define TRACE_SEQ_BUF_LEFT(s) seq_buf_buffer_left(&(s)->seq) /* How much buffer is written? */ -#define TRACE_SEQ_BUF_USED(s) min((s)->seq.len, (unsigned int)(PAGE_SIZE - 1)) +#define TRACE_SEQ_BUF_USED(s) seq_buf_used(&(s)->seq) /* * trace_seq should work with being initialized with 0s. |