[prev in list] [next in list] [prev in thread] [next in thread]
List: hurd-bug
Subject: Re: [PATCH 3/5 gnumach] sched_prim.c: Add missing MACH_HOST pset conditionals
From: Samuel Thibault <samuel.thibault () gnu ! org>
Date: 2023-08-22 21:49:07
Message-ID: 20230822214907.np5bzc2mmfwz75dv () begin
[Download RAW message or body]
AIUI in the !MACH_HOST case, myprocessor->processor_set is &default_pset
anyway? I'd rather keep the code simpler rather than micro-optimise
this.
Samuel
Damien Zammit, le mer. 16 août 2023 01:49:14 +0000, a ecrit:
> ---
> kern/sched_prim.c | 29 +++++++++++++++++++----------
> 1 file changed, 19 insertions(+), 10 deletions(-)
>
> diff --git a/kern/sched_prim.c b/kern/sched_prim.c
> index 5ee0791b..5def77d4 100644
> --- a/kern/sched_prim.c
> +++ b/kern/sched_prim.c
> @@ -510,6 +510,13 @@ static thread_t thread_select(
> processor_t myprocessor)
> {
> thread_t thread;
> + processor_set_t pset;
> +
> +#if MACH_HOST
> + pset = myprocessor->processor_set;
> +#else /* MACH_HOST */
> + pset = &default_pset;
> +#endif /* MACH_HOST */
>
> myprocessor->first_quantum = TRUE;
> /*
> @@ -520,13 +527,6 @@ static thread_t thread_select(
> thread = choose_thread(myprocessor);
> }
> else {
> - processor_set_t pset;
> -
> -#if MACH_HOST
> - pset = myprocessor->processor_set;
> -#else /* MACH_HOST */
> - pset = &default_pset;
> -#endif /* MACH_HOST */
> simple_lock(&pset->runq.lock);
> #if DEBUG
> checkrq(&pset->runq, "thread_select");
> @@ -1259,7 +1259,11 @@ void thread_setrun(
> /*
> * Not bound, any processor in the processor set is ok.
> */
> +#if MACH_HOST
> pset = th->processor_set;
> +#else
> + pset = &default_pset;
> +#endif /* MACH_HOST */
> #if HW_FOOTPRINT
> /*
> * But first check the last processor it ran on.
> @@ -1543,9 +1547,11 @@ thread_t choose_thread(
> /*NOTREACHED*/
> }
> simple_unlock(&runq->lock);
> -
> +#if MACH_HOST
> pset = myprocessor->processor_set;
> -
> +#else
> + pset = &default_pset;
> +#endif
> simple_lock(&pset->runq.lock);
> return choose_pset_thread(myprocessor,pset);
> }
> @@ -1752,8 +1758,11 @@ retry:
> }
> else if (state == PROCESSOR_IDLE) {
> processor_set_t pset;
> -
> +#if MACH_HOST
> pset = myprocessor->processor_set;
> +#else
> + pset = &default_pset;
> +#endif /* MACH_HOST */
> simple_lock(&pset->idle_lock);
> if (myprocessor->state != PROCESSOR_IDLE) {
> /*
> --
> 2.40.1
>
>
>
--
Samuel
---
Pour une évaluation indépendante, transparente et rigoureuse !
Je soutiens la Commission d'Évaluation de l'Inria.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic