Hi all, On Tue, 8 Dec 2020 16:02:22 +1100 Stephen Rothwell wrote: > > Today's linux-next merge of the ftrace tree got a conflict in: > > kernel/trace/ring_buffer.c > > between commit: > > 68e10d5ff512 ("ring-buffer: Always check to put back before stamp when crossing pages") > > from Linus' tree and commit: > > 5b7be9c709e1 ("ring-buffer: Add test to validate the time stamp deltas") > > from the ftrace tree. > > I fixed it up (see below) and can carry the fix as necessary. This > is now fixed as far as linux-next is concerned, but any non trivial > conflicts should be mentioned to your upstream maintainer when your tree > is submitted for merging. You may also want to consider cooperating > with the maintainer of the conflicting tree to minimise any particularly > complex conflicts. > > -- > Cheers, > Stephen Rothwell > > diff --cc kernel/trace/ring_buffer.c > index a6268e09160a,7cd888ee9ac7..000000000000 > --- a/kernel/trace/ring_buffer.c > +++ b/kernel/trace/ring_buffer.c > @@@ -3234,12 -3391,16 +3391,14 @@@ __rb_reserve_next(struct ring_buffer_pe > > /* See if we shot pass the end of this buffer page */ > if (unlikely(write > BUF_PAGE_SIZE)) { > - if (tail != w) { > - /* before and after may now different, fix it up*/ > - b_ok = rb_time_read(&cpu_buffer->before_stamp, &info->before); > - a_ok = rb_time_read(&cpu_buffer->write_stamp, &info->after); > - if (a_ok && b_ok && info->before != info->after) > - (void)rb_time_cmpxchg(&cpu_buffer->before_stamp, > - info->before, info->after); > - } > + /* before and after may now different, fix it up*/ > + b_ok = rb_time_read(&cpu_buffer->before_stamp, &info->before); > + a_ok = rb_time_read(&cpu_buffer->write_stamp, &info->after); > + if (a_ok && b_ok && info->before != info->after) > + (void)rb_time_cmpxchg(&cpu_buffer->before_stamp, > + info->before, info->after); > + if (a_ok && b_ok) > + check_buffer(cpu_buffer, info, CHECK_FULL_PAGE); > return rb_move_tail(cpu_buffer, tail, info); > } > Just a reminder that this conflict still exists. -- Cheers, Stephen Rothwell