diff options
author | Steven Rostedt <srostedt@redhat.com> | 2010-12-02 15:20:10 -0500 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2010-12-02 15:24:00 -0500 |
commit | 65701dedeffb2a40096d91974b4a8ca8dfce486e (patch) | |
tree | 70298f7b34a43a9b9984357dcd226af72941c343 | |
parent | 4d1cfa8098b9d3cf8d4d51528e01cf9ef116bf35 (diff) |
trace-cmd: Allow trace-read -w to work without wakeup event success field
The wakeup event "success" field is going away. Do not depend on it.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
-rw-r--r-- | trace-read.c | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/trace-read.c b/trace-read.c index f8455a3..4aa8d75 100644 --- a/trace-read.c +++ b/trace-read.c | |||
@@ -300,9 +300,6 @@ static void init_wakeup(struct tracecmd_input *handle) | |||
300 | if (!wakeup_task) | 300 | if (!wakeup_task) |
301 | goto fail; | 301 | goto fail; |
302 | wakeup_success = pevent_find_field(event, "success"); | 302 | wakeup_success = pevent_find_field(event, "success"); |
303 | if (!wakeup_success) | ||
304 | goto fail; | ||
305 | |||
306 | 303 | ||
307 | event = pevent_find_event_by_name(pevent, "sched", "sched_switch"); | 304 | event = pevent_find_event_by_name(pevent, "sched", "sched_switch"); |
308 | if (!event) | 305 | if (!event) |
@@ -323,8 +320,6 @@ static void init_wakeup(struct tracecmd_input *handle) | |||
323 | if (!wakeup_new_task) | 320 | if (!wakeup_new_task) |
324 | goto fail; | 321 | goto fail; |
325 | wakeup_new_success = pevent_find_field(event, "success"); | 322 | wakeup_new_success = pevent_find_field(event, "success"); |
326 | if (!wakeup_new_success) | ||
327 | goto fail; | ||
328 | 323 | ||
329 | skip: | 324 | skip: |
330 | return; | 325 | return; |
@@ -410,18 +405,18 @@ static void process_wakeup(struct pevent *pevent, struct record *record) | |||
410 | 405 | ||
411 | id = pevent_data_type(pevent, record); | 406 | id = pevent_data_type(pevent, record); |
412 | if (id == wakeup_id) { | 407 | if (id == wakeup_id) { |
413 | if (pevent_read_number_field(wakeup_success, record->data, &val)) | 408 | if (pevent_read_number_field(wakeup_success, record->data, &val) == 0) { |
414 | return; | 409 | if (!val) |
415 | if (!val) | 410 | return; |
416 | return; | 411 | } |
417 | if (pevent_read_number_field(wakeup_task, record->data, &val)) | 412 | if (pevent_read_number_field(wakeup_task, record->data, &val)) |
418 | return; | 413 | return; |
419 | add_wakeup(val, record->ts); | 414 | add_wakeup(val, record->ts); |
420 | } else if (id == wakeup_new_id) { | 415 | } else if (id == wakeup_new_id) { |
421 | if (pevent_read_number_field(wakeup_new_success, record->data, &val)) | 416 | if (pevent_read_number_field(wakeup_new_success, record->data, &val) == 0) { |
422 | return; | 417 | if (!val) |
423 | if (!val) | 418 | return; |
424 | return; | 419 | } |
425 | if (pevent_read_number_field(wakeup_new_task, record->data, &val)) | 420 | if (pevent_read_number_field(wakeup_new_task, record->data, &val)) |
426 | return; | 421 | return; |
427 | add_wakeup(val, record->ts); | 422 | add_wakeup(val, record->ts); |