Lines Matching refs:event
146 #define skip_time_extend(event) \ argument
147 ((struct ring_buffer_event *)((char *)event + RB_LEN_TIME_EXTEND))
149 static inline int rb_null_event(struct ring_buffer_event *event) in rb_null_event() argument
151 return event->type_len == RINGBUF_TYPE_PADDING && !event->time_delta; in rb_null_event()
154 static void rb_event_set_padding(struct ring_buffer_event *event) in rb_event_set_padding() argument
157 event->type_len = RINGBUF_TYPE_PADDING; in rb_event_set_padding()
158 event->time_delta = 0; in rb_event_set_padding()
162 rb_event_data_length(struct ring_buffer_event *event) in rb_event_data_length() argument
166 if (event->type_len) in rb_event_data_length()
167 length = event->type_len * RB_ALIGNMENT; in rb_event_data_length()
169 length = event->array[0]; in rb_event_data_length()
179 rb_event_length(struct ring_buffer_event *event) in rb_event_length() argument
181 switch (event->type_len) { in rb_event_length()
183 if (rb_null_event(event)) in rb_event_length()
186 return event->array[0] + RB_EVNT_HDR_SIZE; in rb_event_length()
195 return rb_event_data_length(event); in rb_event_length()
208 rb_event_ts_length(struct ring_buffer_event *event) in rb_event_ts_length() argument
212 if (event->type_len == RINGBUF_TYPE_TIME_EXTEND) { in rb_event_ts_length()
215 event = skip_time_extend(event); in rb_event_ts_length()
217 return len + rb_event_length(event); in rb_event_ts_length()
230 unsigned ring_buffer_event_length(struct ring_buffer_event *event) in ring_buffer_event_length() argument
234 if (event->type_len == RINGBUF_TYPE_TIME_EXTEND) in ring_buffer_event_length()
235 event = skip_time_extend(event); in ring_buffer_event_length()
237 length = rb_event_length(event); in ring_buffer_event_length()
238 if (event->type_len > RINGBUF_TYPE_DATA_TYPE_LEN_MAX) in ring_buffer_event_length()
241 if (length > RB_MAX_SMALL_DATA + sizeof(event->array[0])) in ring_buffer_event_length()
242 length -= sizeof(event->array[0]); in ring_buffer_event_length()
249 rb_event_data(struct ring_buffer_event *event) in rb_event_data() argument
251 if (event->type_len == RINGBUF_TYPE_TIME_EXTEND) in rb_event_data()
252 event = skip_time_extend(event); in rb_event_data()
253 BUG_ON(event->type_len > RINGBUF_TYPE_DATA_TYPE_LEN_MAX); in rb_event_data()
255 if (event->type_len) in rb_event_data()
256 return (void *)&event->array[0]; in rb_event_data()
258 return (void *)&event->array[1]; in rb_event_data()
265 void *ring_buffer_event_data(struct ring_buffer_event *event) in ring_buffer_event_data() argument
267 return rb_event_data(event); in ring_buffer_event_data()
1883 rb_event_index(struct ring_buffer_event *event) in rb_event_index() argument
1885 unsigned long addr = (unsigned long)event; in rb_event_index()
2072 struct ring_buffer_event *event; in rb_reset_tail() local
2092 event = __rb_page_index(tail_page, tail); in rb_reset_tail()
2093 kmemcheck_annotate_bitfield(event, bitfield); in rb_reset_tail()
2120 rb_event_set_padding(event); in rb_reset_tail()
2128 event->array[0] = (BUF_PAGE_SIZE - tail) - RB_EVNT_HDR_SIZE; in rb_reset_tail()
2129 event->type_len = RINGBUF_TYPE_PADDING; in rb_reset_tail()
2131 event->time_delta = 1; in rb_reset_tail()
2250 rb_add_time_stamp(struct ring_buffer_event *event, u64 delta) in rb_add_time_stamp() argument
2252 event->type_len = RINGBUF_TYPE_TIME_EXTEND; in rb_add_time_stamp()
2255 if (rb_event_index(event)) { in rb_add_time_stamp()
2256 event->time_delta = delta & TS_MASK; in rb_add_time_stamp()
2257 event->array[0] = delta >> TS_SHIFT; in rb_add_time_stamp()
2260 event->time_delta = 0; in rb_add_time_stamp()
2261 event->array[0] = 0; in rb_add_time_stamp()
2264 return skip_time_extend(event); in rb_add_time_stamp()
2268 struct ring_buffer_event *event);
2283 struct ring_buffer_event *event, in rb_update_event() argument
2290 if (unlikely(!rb_event_is_commit(cpu_buffer, event))) in rb_update_event()
2298 event = rb_add_time_stamp(event, delta); in rb_update_event()
2303 event->time_delta = delta; in rb_update_event()
2306 event->type_len = 0; in rb_update_event()
2307 event->array[0] = length; in rb_update_event()
2309 event->type_len = DIV_ROUND_UP(length, RB_ALIGNMENT); in rb_update_event()
2314 struct ring_buffer_event event; /* Used only for sizeof array */ in rb_calculate_event_length() local
2321 length += sizeof(event.array[0]); in rb_calculate_event_length()
2353 struct ring_buffer_event *event) in rb_try_to_discard() argument
2360 new_index = rb_event_index(event); in rb_try_to_discard()
2361 old_index = new_index + rb_event_ts_length(event); in rb_try_to_discard()
2362 addr = (unsigned long)event; in rb_try_to_discard()
2370 unsigned long event_length = rb_event_length(event); in rb_try_to_discard()
2482 static inline void rb_event_discard(struct ring_buffer_event *event) in rb_event_discard() argument
2484 if (event->type_len == RINGBUF_TYPE_TIME_EXTEND) in rb_event_discard()
2485 event = skip_time_extend(event); in rb_event_discard()
2488 event->array[0] = rb_event_data_length(event) - RB_EVNT_HDR_SIZE; in rb_event_discard()
2489 event->type_len = RINGBUF_TYPE_PADDING; in rb_event_discard()
2491 if (!event->time_delta) in rb_event_discard()
2492 event->time_delta = 1; in rb_event_discard()
2497 struct ring_buffer_event *event) in rb_event_is_commit() argument
2499 unsigned long addr = (unsigned long)event; in rb_event_is_commit()
2502 index = rb_event_index(event); in rb_event_is_commit()
2511 struct ring_buffer_event *event) in rb_update_write_stamp() argument
2519 if (rb_event_is_commit(cpu_buffer, event)) { in rb_update_write_stamp()
2524 if (!rb_event_index(event)) in rb_update_write_stamp()
2527 else if (event->type_len == RINGBUF_TYPE_TIME_EXTEND) { in rb_update_write_stamp()
2528 delta = event->array[0]; in rb_update_write_stamp()
2530 delta += event->time_delta; in rb_update_write_stamp()
2533 cpu_buffer->write_stamp += event->time_delta; in rb_update_write_stamp()
2538 struct ring_buffer_event *event) in rb_commit() argument
2541 rb_update_write_stamp(cpu_buffer, event); in rb_commit()
2651 struct ring_buffer_event *event) in ring_buffer_unlock_commit() argument
2658 rb_commit(cpu_buffer, event); in ring_buffer_unlock_commit()
2690 struct ring_buffer_event *event; in __rb_reserve_next() local
2722 event = __rb_page_index(tail_page, tail); in __rb_reserve_next()
2723 kmemcheck_annotate_bitfield(event, bitfield); in __rb_reserve_next()
2724 rb_update_event(cpu_buffer, event, info); in __rb_reserve_next()
2738 return event; in __rb_reserve_next()
2746 struct ring_buffer_event *event; in rb_reserve_next_event() local
2798 event = __rb_reserve_next(cpu_buffer, &info); in rb_reserve_next_event()
2800 if (unlikely(PTR_ERR(event) == -EAGAIN)) { in rb_reserve_next_event()
2806 if (!event) in rb_reserve_next_event()
2809 return event; in rb_reserve_next_event()
2835 struct ring_buffer_event *event; in ring_buffer_lock_reserve() local
2860 event = rb_reserve_next_event(buffer, cpu_buffer, length); in ring_buffer_lock_reserve()
2861 if (!event) in ring_buffer_lock_reserve()
2864 return event; in ring_buffer_lock_reserve()
2882 struct ring_buffer_event *event) in rb_decrement_entry() argument
2884 unsigned long addr = (unsigned long)event; in rb_decrement_entry()
2934 struct ring_buffer_event *event) in ring_buffer_discard_commit() argument
2940 rb_event_discard(event); in ring_buffer_discard_commit()
2952 rb_decrement_entry(cpu_buffer, event); in ring_buffer_discard_commit()
2953 if (rb_try_to_discard(cpu_buffer, event)) in ring_buffer_discard_commit()
2960 rb_update_write_stamp(cpu_buffer, event); in ring_buffer_discard_commit()
2989 struct ring_buffer_event *event; in ring_buffer_write() local
3015 event = rb_reserve_next_event(buffer, cpu_buffer, length); in ring_buffer_write()
3016 if (!event) in ring_buffer_write()
3019 body = rb_event_data(event); in ring_buffer_write()
3023 rb_commit(cpu_buffer, event); in ring_buffer_write()
3453 struct ring_buffer_event *event) in rb_update_read_stamp() argument
3457 switch (event->type_len) { in rb_update_read_stamp()
3462 delta = event->array[0]; in rb_update_read_stamp()
3464 delta += event->time_delta; in rb_update_read_stamp()
3473 cpu_buffer->read_stamp += event->time_delta; in rb_update_read_stamp()
3484 struct ring_buffer_event *event) in rb_update_iter_read_stamp() argument
3488 switch (event->type_len) { in rb_update_iter_read_stamp()
3493 delta = event->array[0]; in rb_update_iter_read_stamp()
3495 delta += event->time_delta; in rb_update_iter_read_stamp()
3504 iter->read_stamp += event->time_delta; in rb_update_iter_read_stamp()
3648 struct ring_buffer_event *event; in rb_advance_reader() local
3658 event = rb_reader_event(cpu_buffer); in rb_advance_reader()
3660 if (event->type_len <= RINGBUF_TYPE_DATA_TYPE_LEN_MAX) in rb_advance_reader()
3663 rb_update_read_stamp(cpu_buffer, event); in rb_advance_reader()
3665 length = rb_event_length(event); in rb_advance_reader()
3672 struct ring_buffer_event *event; in rb_advance_iter() local
3688 event = rb_iter_head_event(iter); in rb_advance_iter()
3690 length = rb_event_length(event); in rb_advance_iter()
3701 rb_update_iter_read_stamp(iter, event); in rb_advance_iter()
3720 struct ring_buffer_event *event; in rb_buffer_peek() local
3738 event = rb_reader_event(cpu_buffer); in rb_buffer_peek()
3740 switch (event->type_len) { in rb_buffer_peek()
3742 if (rb_null_event(event)) in rb_buffer_peek()
3752 return event; in rb_buffer_peek()
3766 *ts = cpu_buffer->read_stamp + event->time_delta; in rb_buffer_peek()
3772 return event; in rb_buffer_peek()
3787 struct ring_buffer_event *event; in rb_iter_peek() local
3825 event = rb_iter_head_event(iter); in rb_iter_peek()
3827 switch (event->type_len) { in rb_iter_peek()
3829 if (rb_null_event(event)) { in rb_iter_peek()
3834 return event; in rb_iter_peek()
3848 *ts = iter->read_stamp + event->time_delta; in rb_iter_peek()
3852 return event; in rb_iter_peek()
3909 struct ring_buffer_event *event; in ring_buffer_peek() local
3919 event = rb_buffer_peek(cpu_buffer, ts, lost_events); in ring_buffer_peek()
3920 if (event && event->type_len == RINGBUF_TYPE_PADDING) in ring_buffer_peek()
3925 if (event && event->type_len == RINGBUF_TYPE_PADDING) in ring_buffer_peek()
3928 return event; in ring_buffer_peek()
3943 struct ring_buffer_event *event; in ring_buffer_iter_peek() local
3948 event = rb_iter_peek(iter, ts); in ring_buffer_iter_peek()
3951 if (event && event->type_len == RINGBUF_TYPE_PADDING) in ring_buffer_iter_peek()
3954 return event; in ring_buffer_iter_peek()
3973 struct ring_buffer_event *event = NULL; in ring_buffer_consume() local
3988 event = rb_buffer_peek(cpu_buffer, ts, lost_events); in ring_buffer_consume()
3989 if (event) { in ring_buffer_consume()
4000 if (event && event->type_len == RINGBUF_TYPE_PADDING) in ring_buffer_consume()
4003 return event; in ring_buffer_consume()
4134 struct ring_buffer_event *event; in ring_buffer_read() local
4140 event = rb_iter_peek(iter, ts); in ring_buffer_read()
4141 if (!event) in ring_buffer_read()
4144 if (event->type_len == RINGBUF_TYPE_PADDING) in ring_buffer_read()
4151 return event; in ring_buffer_read()
4481 struct ring_buffer_event *event; in ring_buffer_read_page() local
4516 event = rb_reader_event(cpu_buffer); in ring_buffer_read_page()
4545 size = rb_event_ts_length(event); in ring_buffer_read_page()
4561 size = rb_event_length(event); in ring_buffer_read_page()
4573 event = rb_reader_event(cpu_buffer); in ring_buffer_read_page()
4575 size = rb_event_ts_length(event); in ring_buffer_read_page()
4753 struct ring_buffer_event *event; in rb_write_something() local
4773 event = ring_buffer_lock_reserve(data->buffer, len); in rb_write_something()
4774 if (!event) { in rb_write_something()
4785 event_len = ring_buffer_event_length(event); in rb_write_something()
4790 item = ring_buffer_event_data(event); in rb_write_something()
4813 ring_buffer_unlock_commit(data->buffer, event); in rb_write_something()
4929 struct ring_buffer_event *event; in test_ringbuffer() local
4967 while ((event = ring_buffer_consume(buffer, cpu, NULL, &lost))) { in test_ringbuffer()
4969 item = ring_buffer_event_data(event); in test_ringbuffer()
4970 total_len += ring_buffer_event_length(event); in test_ringbuffer()