From d8e5c4d5cccdca24c9be6ec373224596a2ab9327 Mon Sep 17 00:00:00 2001 From: Matheus Date: Tue, 17 Dec 2024 23:20:02 -0300 Subject: [PATCH] uacpi glue: optimizations --- kernel-src/io/acpi/glue.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/kernel-src/io/acpi/glue.c b/kernel-src/io/acpi/glue.c index 258a83dc..d1ed0920 100644 --- a/kernel-src/io/acpi/glue.c +++ b/kernel-src/io/acpi/glue.c @@ -264,8 +264,7 @@ uacpi_u64 uacpi_kernel_get_nanoseconds_since_boot(void) { } void uacpi_kernel_stall(uacpi_u8 usec) { - timespec_t start = timekeeper_timefromboot(); - while (timespec_diffus(start, timekeeper_timefromboot()) < usec) CPU_PAUSE(); + timekeeper_wait_us(usec); } void uacpi_kernel_sleep(uacpi_u64 msec) { @@ -354,10 +353,11 @@ static void acpi_dowork(struct acpi_workctx *ctx) { } static void acpi_dogpework() { - sched_target_cpu(get_bsp()); - sched_yield(); + sched_reschedule_on_cpu(get_bsp(), true); acpi_dowork(&gpework); + + sched_target_cpu(NULL); } static void acpi_donotifywork() {