NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-vax/55415: vax no longer preempts in a timely fashion
The following reply was made to PR port-vax/55415; it has been noted by GNATS.
From: Greg Oster <oster%netbsd.org@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: port-vax/55415: vax no longer preempts in a timely fashion
Date: Mon, 6 Jul 2020 08:50:11 -0600
On 6/26/20 12:55 AM, Anders Magnusson wrote:
> The following reply was made to PR port-vax/55415; it has been noted by GNATS.
>
> From: Anders Magnusson <ragge%tethuvudet.se@localhost>
> To: gnats-bugs%netbsd.org@localhost, port-vax-maintainer%netbsd.org@localhost,
> gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost, oster%netbsd.org@localhost
> Cc:
> Subject: Re: port-vax/55415: vax no longer preempts in a timely fashion
> Date: Fri, 26 Jun 2020 08:54:15 +0200
>
> Den 2020-06-25 kl. 17:00, skrev Greg Oster:
> > The following reply was made to PR port-vax/55415; it has been noted by GNATS.
> >
> > From: Greg Oster <oster%netbsd.org@localhost>
> > To: gnats-bugs%netbsd.org@localhost
> > Cc:
> > Subject: Re: port-vax/55415: vax no longer preempts in a timely fashion
> > Date: Thu, 25 Jun 2020 08:55:50 -0600
> >
> > On 6/25/20 3:15 AM, Anders Magnusson wrote:
> > > The following reply was made to PR port-vax/55415; it has been noted by GNATS.
> > >
> > > From: Anders Magnusson <ragge%tethuvudet.se@localhost>
> > > To: gnats-bugs%netbsd.org@localhost
> > > Cc:
> > > Subject: Re: port-vax/55415: vax no longer preempts in a timely fashion
> > > Date: Thu, 25 Jun 2020 11:10:42 +0200
> > >
> > > Will it work if you only restore the removed line in cpu.h?
> >
> > Yes, yes it does! So it's just one line that needs to be restored to
> > get things working properly.
> >
> Great!
>
> The other missing line should not be needed as I understand the code in
> sched_resched_cpu().
> ci_want_resched should always be set already when cpu_need_resched() is
> called.
>
> I'll try to fire up my 4000/90 this weekend and see if I can find this bug.
>
> -- R
>
>
I had a few minutes to poke at this again... and can confirm that the
issue can be seen using simh as well. I note that setting
ci_want_resched to 4 (RESCHED_UPREEMPT) or 8 (RESCHED_KPREEMPT) is
insufficient -- it is only with setting ci_want_resched to 1 (i.e.
likely blowing away the currently set value of 4) that scheduling
behaves properly. Also: using:
ci_want_resched |= 1;
is also insufficient -- which tells me it's the lack of '4' or '8' being
set that is the thing, not the setting of '1'. But I havn't been able
to figure out why yet...
Later...
Greg Oster
Home |
Main Index |
Thread Index |
Old Index