Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/aarch64/aarch64 When waking from cpu_idle(), only c...



details:   https://anonhg.NetBSD.org/src/rev/8d7d95bac83a
branches:  trunk
changeset: 952956:8d7d95bac83a
user:      jmcneill <jmcneill%NetBSD.org@localhost>
date:      Sun Feb 21 23:37:09 2021 +0000

description:
When waking from cpu_idle(), only call dosoftints if ci_intr_depth == 0

diffstat:

 sys/arch/aarch64/aarch64/idle_machdep.S |  5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diffs (26 lines):

diff -r 57812c6fa4c2 -r 8d7d95bac83a sys/arch/aarch64/aarch64/idle_machdep.S
--- a/sys/arch/aarch64/aarch64/idle_machdep.S   Sun Feb 21 23:06:39 2021 +0000
+++ b/sys/arch/aarch64/aarch64/idle_machdep.S   Sun Feb 21 23:37:09 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: idle_machdep.S,v 1.7 2021/02/11 08:35:12 ryo Exp $ */
+/* $NetBSD: idle_machdep.S,v 1.8 2021/02/21 23:37:09 jmcneill Exp $ */
 
 /*-
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -36,7 +36,7 @@
 #include <aarch64/locore.h>
 #include "assym.h"
 
-RCSID("$NetBSD: idle_machdep.S,v 1.7 2021/02/11 08:35:12 ryo Exp $");
+RCSID("$NetBSD: idle_machdep.S,v 1.8 2021/02/21 23:37:09 jmcneill Exp $");
 
 #ifdef ARM_INTR_IMPL
 #include ARM_INTR_IMPL
@@ -93,6 +93,7 @@
        str     w28, [x1, #CI_INTR_DEPTH]       /* ci->ci_intr_depth = old */
 
 #if defined(__HAVE_FAST_SOFTINTS) && !defined(__HAVE_PIC_FAST_SOFTINTS)
+       cbnz    w28, 1f                         /* Skip if intr_depth > 0 */
        ldr     w3, [x1, #CI_SOFTINTS]          /* Get pending softint mask */
        /* CPL should be 0 */
        ldr     w2, [x1, #CI_CPL]               /* Get current priority level */



Home | Main Index | Thread Index | Old Index