lkml.org 
[lkml]   [2014]   [Jan]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/5] tools lib traceevent: Add state member to struct trace_seq
On Tue, Jan 07, 2014 at 12:00:09PM +0900, Namhyung Kim wrote:

SNIP

> void trace_seq_init(struct trace_seq *s);
> diff --git a/tools/lib/traceevent/trace-seq.c b/tools/lib/traceevent/trace-seq.c
> index d7f2e68bc5b9..1747aa50ecb0 100644
> --- a/tools/lib/traceevent/trace-seq.c
> +++ b/tools/lib/traceevent/trace-seq.c
> @@ -32,8 +32,9 @@
> #define TRACE_SEQ_POISON ((void *)0xdeadbeef)
> #define TRACE_SEQ_CHECK(s) \
> do { \
> - if ((s)->buffer == TRACE_SEQ_POISON) \
> - die("Usage of trace_seq after it was destroyed"); \
> + if (WARN_ONCE((s)->buffer == TRACE_SEQ_POISON, \
> + "Usage of trace_seq after it was destroyed")) \
> + (s)->state = TRACE_SEQ__BUFFER_POISONED; \
> } while (0)
>
> /**
> @@ -46,6 +47,7 @@ void trace_seq_init(struct trace_seq *s)
> s->readpos = 0;
> s->buffer_size = TRACE_SEQ_BUF_SIZE;
> s->buffer = malloc_or_die(s->buffer_size);
> + s->state = TRACE_SEQ__GOOD;
> }
>
> /**
> @@ -81,7 +83,7 @@ static void expand_buffer(struct trace_seq *s)
> s->buffer_size += TRACE_SEQ_BUF_SIZE;
> s->buffer = realloc(s->buffer, s->buffer_size);
> if (!s->buffer)
> - die("Can't allocate trace_seq buffer memory");
> + s->state = TRACE_SEQ__MEM_ALLOC_FAILED;

and also here?

if (WARN_ONCE(!s->buffer))
s->state = TRACE_SEQ__MEM_ALLOC_FAILED;

otherwise the whole series seems ok,
jirka


\
 
 \ /
  Last update: 2014-01-07 14:41    [W:0.068 / U:2.508 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site