Re: [PATCH] tracing: Mitigate possible softlockup in __tracing_open()
From: Steven Rostedt
Date: Tue Aug 27 2024 - 07:53:06 EST
On Tue, 27 Aug 2024 09:29:55 +0800
Zheng Yejian <zhengyejian@xxxxxxxxxxxxxxx> wrote:
> > This is the wrong place to put this. If the problem is with
> > tracing_iter_reset(), then add it there.
> >
> > while (ring_buffer_iter_peek(buf_iter, &ts)) {
> > if (ts >= iter->array_buffer->time_start)
> > break;
> > entries++;
> > ring_buffer_iter_advance(buf_iter);
> > /* This could be a big loop */
> > cond_resched();
>
> Do resched check every event peek, I'm afraid there will
> be too many 're-schedule'.
cond_resched() as the name suggests only schedules conditionally if
NEED_RESCHED is set. This isn't a fast path (obviously, as it requires
a cond_resched).
-- Steve