Re: uprobe splat in PREEMP_RT

Sebastian Sewior
2025-04-03T07:37:37Z

On 2025-04-02 16:12:46 [+0200], Oleg Nesterov wrote:
> On 04/02, Sebastian Sewior wrote:
> >
> > On 2025-04-02 14:18:51 [+0200], Oleg Nesterov wrote:
> > > On 04/02, Sebastian Sewior wrote:
> >
> > I need to tell mutt to replace my name in case it is misspelled.
>
> Hmm... have I misspelled your name somewhere?
>
> If yes - my apologies.

Don't worry. You didn't start it, it is just I noticed it.

> > > > The preempted ri_timer() could stall a read_seqcount_begin().
> > >
> > > Again, nobody use read_seqcount_begin(utask->ri_seqcount).
> > >
> > > free_ret_instance() uses raw_seqcount_try_begin(utask->ri_seqcount),
> > > which, since ri_seqcount is seqcount_t, is just smp_load_acquire().
> > > This can't stall.
> >
> > Yes. This would work for here just to skip the check because of all
> > details that are hard to express. Therefore I suggested to use
> > raw_write_seqcount_begin() instead of write_seqcount_begin() in
> > 20250402122158.j_8VoHQ-@linutronix.de. Would that work?
>
> If this can work, then let me repeat: why can't we turn ->ri_seqcount
> into a boolean?

I just stumbled here due to the warning. Now that you ask the question,
it is used a bool in the current construct. So yes, I also don't see
why.

> Oleg.

Sebastian