summaryrefslogtreecommitdiffstats
path: root/sys/i386/include/smptests.h
diff options
context:
space:
mode:
authorfsmp <fsmp@FreeBSD.org>1997-12-08 23:00:24 +0000
committerfsmp <fsmp@FreeBSD.org>1997-12-08 23:00:24 +0000
commit6dd7dcc53b675eb0167c348bd2a4b6f527ec387c (patch)
tree8ceb88629b524e26e069a9a105e202d2131596e3 /sys/i386/include/smptests.h
parentc29fe145047eadea9dcee01d907b3a990906a6af (diff)
downloadFreeBSD-src-6dd7dcc53b675eb0167c348bd2a4b6f527ec387c.zip
FreeBSD-src-6dd7dcc53b675eb0167c348bd2a4b6f527ec387c.tar.gz
The improvements to clock statistics by Tor Egge
Wrappered and enabled by the define BETTER_CLOCK (on by default in smpyests.h) Reviewed by: smp@csn.net Submitted by: Tor Egge <Tor.Egge@idi.ntnu.no>
Diffstat (limited to 'sys/i386/include/smptests.h')
-rw-r--r--sys/i386/include/smptests.h23
1 files changed, 22 insertions, 1 deletions
diff --git a/sys/i386/include/smptests.h b/sys/i386/include/smptests.h
index 2ad4da8..da80b72 100644
--- a/sys/i386/include/smptests.h
+++ b/sys/i386/include/smptests.h
@@ -22,7 +22,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: smptests.h,v 1.26 1997/09/07 22:02:02 fsmp Exp $
+ * $Id: smptests.h,v 1.27 1997/09/07 23:06:15 fsmp Exp $
*/
#ifndef _MACHINE_SMPTESTS_H_
@@ -35,6 +35,27 @@
/*
+ * Tor's clock improvements.
+ *
+ * When the giant kernel lock disappears, a different strategy should
+ * probably be used, thus this patch can only be considered a temporary
+ * measure.
+ *
+ * This patch causes (NCPU-1)*(128+100) extra IPIs per second.
+ * During profiling, the number is (NCPU-1)*(1024+100) extra IPIs/s
+ * in addition to extra IPIs due to forwarding ASTs to other CPUs.
+ *
+ * Having a shared AST flag in an SMP configuration is wrong, and I've
+ * just kludged around it, based upon the kernel lock blocking other
+ * processors from entering the kernel while handling an AST for one
+ * processor. When the giant kernel lock disappers, this kludge breaks.
+ *
+ * -- Tor
+ */
+#define BETTER_CLOCK
+
+
+/*
* Control the "giant lock" pushdown by logical steps.
*/
#define PUSHDOWN_LEVEL_1
OpenPOWER on IntegriCloud