On Thu, 26 Nov 2020 06:52:45 +0100 Greg KH <[email protected]> wrote:
> On Tue, Nov 24, 2020 at 10:39:17PM +0000, J. Avila wrote: > > Hello, > > > > In the ftrace logs we've collected internally, we have found that there are > > situations where time seems to go backwards; this breaks userspace tools > > which > > expect time to always go forward in these logs. For example, in this snippet > > from a db845c running a 5.10-rc4 kernel[1] (thanks for getting us the trace, > > John!), we see: > > Does the patch at: > https://lore.kernel.org/r/[email protected] > > resolve this issue for you? > I think I found the bug. Can you apply this patch and let me know if it fixes the issue for you? -- Steve diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c index dc83b3fa9fe7..bccaf88d3706 100644 --- a/kernel/trace/ring_buffer.c +++ b/kernel/trace/ring_buffer.c @@ -3291,7 +3291,7 @@ __rb_reserve_next(struct ring_buffer_per_cpu *cpu_buffer, /* Nothing came after this event between C and E */ info->delta = ts - info->after; (void)rb_time_cmpxchg(&cpu_buffer->write_stamp, - info->after, info->ts); + info->after, ts); info->ts = ts; } else { /*

