diff options
| -rw-r--r-- | tools/perf/util/session.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index 9401909fa283..00ab298bbb4b 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c | |||
| @@ -696,15 +696,18 @@ more: | |||
| 696 | p = &event; | 696 | p = &event; |
| 697 | p += sizeof(struct perf_event_header); | 697 | p += sizeof(struct perf_event_header); |
| 698 | 698 | ||
| 699 | err = do_read(self->fd, p, size - sizeof(struct perf_event_header)); | 699 | if (size - sizeof(struct perf_event_header)) { |
| 700 | if (err <= 0) { | 700 | err = do_read(self->fd, p, |
| 701 | if (err == 0) { | 701 | size - sizeof(struct perf_event_header)); |
| 702 | pr_err("unexpected end of event stream\n"); | 702 | if (err <= 0) { |
| 703 | goto done; | 703 | if (err == 0) { |
| 704 | } | 704 | pr_err("unexpected end of event stream\n"); |
| 705 | goto done; | ||
| 706 | } | ||
| 705 | 707 | ||
| 706 | pr_err("failed to read event data\n"); | 708 | pr_err("failed to read event data\n"); |
| 707 | goto out_err; | 709 | goto out_err; |
| 710 | } | ||
| 708 | } | 711 | } |
| 709 | 712 | ||
| 710 | if (size == 0 || | 713 | if (size == 0 || |
