ring-buffer: Always inline rb_event_data()
The rb_event_data() is the fast path of getting the ring buffer data from an event. Externally, ring_buffer_event_data() is used to access this function. But unfortunately, rb_event_data() is not inlined, and calling ring_buffer_event_data() causes that function to be called again. Force rb_event_data() to be inlined to lower the number of operations needed when calling ring_buffer_event_data(). Link: http://lkml.kernel.org/r/20161121183700.GW26852@two.firstfloor.org Reported-by: Andi Kleen <andi@firstfloor.org> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
This commit is contained in:
parent
fa7ffb39ef
commit
929ddbf3ef
|
@ -245,7 +245,7 @@ unsigned ring_buffer_event_length(struct ring_buffer_event *event)
|
|||
EXPORT_SYMBOL_GPL(ring_buffer_event_length);
|
||||
|
||||
/* inline for ring buffer fast paths */
|
||||
static void *
|
||||
static __always_inline void *
|
||||
rb_event_data(struct ring_buffer_event *event)
|
||||
{
|
||||
if (event->type_len == RINGBUF_TYPE_TIME_EXTEND)
|
||||
|
|
Loading…
Reference in New Issue