Re: [PATCH 3/6] sched: Extract __schedule_loop()

Phil Auld
2023-08-16T11:41:27Z

On Wed, Aug 16, 2023 at 12:01:54PM +0200 Sebastian Andrzej Siewior wrote:
> On 2023-08-15 18:33:01 [-0400], Phil Auld wrote:
> > > --- a/kernel/sched/core.c
> > > +++ b/kernel/sched/core.c
> > > @@ -6787,16 +6787,21 @@ static void sched_update_worker(struct t
> > > }
> > > }
> > >
> > > -asmlinkage __visible void __sched schedule(void)
> > > +static __always_inline void __schedule_loop(unsigned int sched_mode)
> >
> > I think this needs __sched or it's the only thing that ever shows up
> > in wchan. E.g.
> >
> > 16995 0 bash S __schedule_loop.constprop.0
>
> I don't see __schedule_loop in my RT and !RT build. I tried gcc and
> clang.
>

I do. Admittedly I'm not an expert in how the wchan unwinding works but
we have a slightly older version of this patch in our kernel (schedule_loop
not __schedule_loop). When I added __sched it fixed it. Maybe there
is something else but that seemed pretty obvious.

/* Attach to any functions which should be ignored in wchan output. */
#define __sched __section(".sched.text")

I can't explain why you are not seeing it.

Cheers,
Phil

> Sebastian
>

--