diff options
| -rw-r--r-- | kernel/trace/ring_buffer_benchmark.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/kernel/trace/ring_buffer_benchmark.c b/kernel/trace/ring_buffer_benchmark.c index 8d68e149a8b3..cf6b0f50134e 100644 --- a/kernel/trace/ring_buffer_benchmark.c +++ b/kernel/trace/ring_buffer_benchmark.c | |||
| @@ -102,8 +102,10 @@ static enum event_status read_page(int cpu) | |||
| 102 | event = (void *)&rpage->data[i]; | 102 | event = (void *)&rpage->data[i]; |
| 103 | switch (event->type_len) { | 103 | switch (event->type_len) { |
| 104 | case RINGBUF_TYPE_PADDING: | 104 | case RINGBUF_TYPE_PADDING: |
| 105 | /* We don't expect any padding */ | 105 | /* failed writes may be discarded events */ |
| 106 | KILL_TEST(); | 106 | if (!event->time_delta) |
| 107 | KILL_TEST(); | ||
| 108 | inc = event->array[0] + 4; | ||
| 107 | break; | 109 | break; |
| 108 | case RINGBUF_TYPE_TIME_EXTEND: | 110 | case RINGBUF_TYPE_TIME_EXTEND: |
| 109 | inc = 8; | 111 | inc = 8; |
| @@ -119,7 +121,7 @@ static enum event_status read_page(int cpu) | |||
| 119 | KILL_TEST(); | 121 | KILL_TEST(); |
| 120 | break; | 122 | break; |
| 121 | } | 123 | } |
| 122 | inc = event->array[0]; | 124 | inc = event->array[0] + 4; |
| 123 | break; | 125 | break; |
| 124 | default: | 126 | default: |
| 125 | entry = ring_buffer_event_data(event); | 127 | entry = ring_buffer_event_data(event); |
