From 2440a9d67b0785132e303ed6f12dff8e80baa547 Mon Sep 17 00:00:00 2001 From: Ian Moffett Date: Wed, 14 Feb 2024 18:26:47 -0500 Subject: kernel: cpu: Add hint_spinwait() This commit introduces a macro that must exist per architecture (even if it does nothing) to ensure it is machine independent. Signed-off-by: Ian Moffett --- sys/kern/kern_sched.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'sys/kern') diff --git a/sys/kern/kern_sched.c b/sys/kern/kern_sched.c index da4c6c5..4f17ddf 100644 --- a/sys/kern/kern_sched.c +++ b/sys/kern/kern_sched.c @@ -32,6 +32,7 @@ #include #include #include +#include #include /* @@ -59,17 +60,12 @@ sched_enqueue_ci(struct cpu_info *ci) /* * Processor awaiting tasks to be assigned will be here spinning. - * - * XXX: We are not using the PAUSE instruction for the sake of - * ensuring compatibility... PAUSE is F3 90, REP NOP is - * F3 90... REP NOP will be read as a PAUSE on processors - * that support it. */ __noreturn static void sched_enter(void) { for (;;) { - __ASMV("rep; nop"); + hint_spinwait(); } } -- cgit v1.2.3