Source-Changes-HG archive

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

[src/bjh21-hydra]: src/sys/arch/arm/arm32 Flush the cache before reading sche...



details:   https://anonhg.NetBSD.org/src/rev/81e549305dab
branches:  bjh21-hydra
changeset: 538368:81e549305dab
user:      bjh21 <bjh21%NetBSD.org@localhost>
date:      Thu Oct 24 21:25:46 2002 +0000

description:
Flush the cache before reading sched_whichqs.  This is entirely the wrong
way to do this, but it should work (very slowly) until I work out the
right way.

diffstat:

 sys/arch/arm/arm32/cpuswitch.S |  8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diffs (22 lines):

diff -r e49b27203785 -r 81e549305dab sys/arch/arm/arm32/cpuswitch.S
--- a/sys/arch/arm/arm32/cpuswitch.S    Thu Oct 24 21:23:57 2002 +0000
+++ b/sys/arch/arm/arm32/cpuswitch.S    Thu Oct 24 21:25:46 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: cpuswitch.S,v 1.28.2.6 2002/10/19 15:13:23 bjh21 Exp $ */
+/*     $NetBSD: cpuswitch.S,v 1.28.2.7 2002/10/24 21:25:46 bjh21 Exp $ */
 
 /*
  * Copyright (c) 1994-1998 Mark Brinicombe.
@@ -157,6 +157,12 @@
 
        /* Non-powersave idle. */
 1:     /* should maybe do uvm pageidlezero stuff here */
+#ifdef MULTIPROCESSOR
+       /* XXX This will thrash the data bus.  We need a better way. */
+       ldr     r4, .Lcpufuncs
+       mov     lr, pc
+       ldr     pc, [r4, #(CF_IDCACHE_WBINV_ALL)]
+#endif
        ldr     r3, [r7]                /* r3 = whichqs */
        teq     r3, #0x00000000
        bne     .Lswitch_search



Home | Main Index | Thread Index | Old Index