Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1577059

Re: [RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer type

From Tom Zanussi <tom.zanussi@linux.intel.com>
Newsgroups linux.kernel
Subject Re: [RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer type
Date 2017-02-08 22:00 +0100
Message-ID <t8Hvl-56F-55@gated-at.bofh.it> (permalink)
References <t8Ee5-3aO-3@gated-at.bofh.it> <t8Ee7-3aO-55@gated-at.bofh.it> <t8HbY-4Z7-39@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On Wed, 2017-02-08 at 15:32 -0500, Steven Rostedt wrote:
> On Wed,  8 Feb 2017 11:24:59 -0600
> Tom Zanussi <tom.zanussi@linux.intel.com> wrote:
> 
...
> >  	/*
> >  	 * The event first in the commit queue updates the
> >  	 * time stamp.
> > @@ -2492,8 +2516,7 @@ static inline void rb_event_discard(struct ring_buffer_event *event)
> >  			delta <<= TS_SHIFT;
> >  			delta += event->time_delta;
> >  			cpu_buffer->write_stamp += delta;
> > -		} else
> > -			cpu_buffer->write_stamp += event->time_delta;
> > +		}
> 
> And why is this removed?
> 

Yeah, it doesn't make sense, given that we've returned already.  Looks
like it was just a lineo..

> >  	}
> >  }
> >  
> > @@ -2674,7 +2697,7 @@ int ring_buffer_unlock_commit(struct ring_buffer *buffer,
> >  	 * If this is the first commit on the page, then it has the same
> >  	 * timestamp as the page itself.
> >  	 */
> > -	if (!tail)
> > +	if (!tail && !ring_buffer_time_stamp_abs(cpu_buffer->buffer))
> >  		info->delta = 0;
> >  
> >  	/* See if we shot pass the end of this buffer page */
> > @@ -2752,8 +2775,11 @@ int ring_buffer_unlock_commit(struct ring_buffer *buffer,
> >  	/* make sure this diff is calculated here */
> >  	barrier();
> >  
> > -	/* Did the write stamp get updated already? */
> > -	if (likely(info.ts >= cpu_buffer->write_stamp)) {
> > +	if (ring_buffer_time_stamp_abs(buffer)) {
> > +		info.delta = info.ts;
> > +		rb_handle_timestamp(cpu_buffer, &info);
> > +	} else /* Did the write stamp get updated already? */
> > +		if (likely(info.ts >= cpu_buffer->write_stamp)) {
> 
> OK, please break this patch up into two. Although, I may take it and
> start on it as well ;-)  One with the implementation of the EXTEND_ABS,
> and the other with the setting of the flags.
> 

OK, I'll break it up if I don't see you do anything with it in the
meantime..

Tom

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer type Tom Zanussi <tom.zanussi@linux.intel.com> - 2017-02-08 18:30 +0100
  Re: [RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer  type Steven Rostedt <rostedt@goodmis.org> - 2017-02-08 21:40 +0100
    Re: [RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer  type Tom Zanussi <tom.zanussi@linux.intel.com> - 2017-02-08 22:00 +0100
      Re: [RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer  type Steven Rostedt <rostedt@goodmis.org> - 2017-02-09 16:10 +0100
    Re: [RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer  type Namhyung Kim <namhyung@kernel.org> - 2017-02-10 07:10 +0100
      Re: [RFC][PATCH 03/21] ring-buffer: Add TIME_EXTEND_ABS ring buffer  type Steven Rostedt <rostedt@goodmis.org> - 2017-02-10 15:40 +0100

csiph-web