diff options
Diffstat (limited to 'kernel/trace/ring_buffer.c')
| -rw-r--r-- | kernel/trace/ring_buffer.c | 9 | 
1 files changed, 3 insertions, 6 deletions
diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c index 5dd017fea6f..a72c6e03dee 100644 --- a/kernel/trace/ring_buffer.c +++ b/kernel/trace/ring_buffer.c @@ -1787,9 +1787,9 @@ rb_reset_tail(struct ring_buffer_per_cpu *cpu_buffer,  static struct ring_buffer_event *  rb_move_tail(struct ring_buffer_per_cpu *cpu_buffer,  	     unsigned long length, unsigned long tail, -	     struct buffer_page *commit_page,  	     struct buffer_page *tail_page, u64 *ts)  { +	struct buffer_page *commit_page = cpu_buffer->commit_page;  	struct ring_buffer *buffer = cpu_buffer->buffer;  	struct buffer_page *next_page;  	int ret; @@ -1892,13 +1892,10 @@ static struct ring_buffer_event *  __rb_reserve_next(struct ring_buffer_per_cpu *cpu_buffer,  		  unsigned type, unsigned long length, u64 *ts)  { -	struct buffer_page *tail_page, *commit_page; +	struct buffer_page *tail_page;  	struct ring_buffer_event *event;  	unsigned long tail, write; -	commit_page = cpu_buffer->commit_page; -	/* we just need to protect against interrupts */ -	barrier();  	tail_page = cpu_buffer->tail_page;  	write = local_add_return(length, &tail_page->write); @@ -1909,7 +1906,7 @@ __rb_reserve_next(struct ring_buffer_per_cpu *cpu_buffer,  	/* See if we shot pass the end of this buffer page */  	if (write > BUF_PAGE_SIZE)  		return rb_move_tail(cpu_buffer, length, tail, -				    commit_page, tail_page, ts); +				    tail_page, ts);  	/* We reserved something on the buffer */  |