|
@@ -1984,7 +1984,7 @@ rb_add_time_stamp(struct ring_buffer_event *event, u64 delta)
|
|
|
|
|
|
/**
|
|
|
* rb_update_event - update event type and data
|
|
|
- * @event: the even to update
|
|
|
+ * @event: the event to update
|
|
|
* @type: the type of event
|
|
|
* @length: the size of the event field in the ring buffer
|
|
|
*
|
|
@@ -3764,12 +3764,14 @@ rb_iter_peek(struct ring_buffer_iter *iter, u64 *ts)
|
|
|
return NULL;
|
|
|
|
|
|
/*
|
|
|
- * We repeat when a time extend is encountered.
|
|
|
- * Since the time extend is always attached to a data event,
|
|
|
- * we should never loop more than once.
|
|
|
- * (We never hit the following condition more than twice).
|
|
|
+ * We repeat when a time extend is encountered or we hit
|
|
|
+ * the end of the page. Since the time extend is always attached
|
|
|
+ * to a data event, we should never loop more than three times.
|
|
|
+ * Once for going to next page, once on time extend, and
|
|
|
+ * finally once to get the event.
|
|
|
+ * (We never hit the following condition more than thrice).
|
|
|
*/
|
|
|
- if (RB_WARN_ON(cpu_buffer, ++nr_loops > 2))
|
|
|
+ if (RB_WARN_ON(cpu_buffer, ++nr_loops > 3))
|
|
|
return NULL;
|
|
|
|
|
|
if (rb_per_cpu_empty(cpu_buffer))
|