aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorRodney W. Grimes <rgrimes@FreeBSD.org>1993-09-06 16:12:05 +0000
committerRodney W. Grimes <rgrimes@FreeBSD.org>1993-09-06 16:12:05 +0000
commit2a5017c0e017857b6b20c2a00879576f0cf4f907 (patch)
treef84875480436902773e5d33a4d696abc6427252f /sys
parentd5d681f4cce187e9e32a5870190ff266ea9b4f33 (diff)
downloadsrc-2a5017c0e017857b6b20c2a00879576f0cf4f907.tar.gz
src-2a5017c0e017857b6b20c2a00879576f0cf4f907.zip
Removed patch kit header, added $Id$
Added support of DONET({IMP,NS,ISO}) so you can now compile with options NS and ISO, still missing some IMP code, but since the imp is old and gone I doubt this will ever be used.
Notes
Notes: svn path=/head/; revision=396
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/isa/vector.S14
-rw-r--r--sys/amd64/isa/vector.s14
-rw-r--r--sys/i386/isa/icu.s93
-rw-r--r--sys/i386/isa/vector.s14
4 files changed, 68 insertions, 67 deletions
diff --git a/sys/amd64/isa/vector.S b/sys/amd64/isa/vector.S
index e56a6b5e4b66..0a1dec99bc4f 100644
--- a/sys/amd64/isa/vector.S
+++ b/sys/amd64/isa/vector.S
@@ -339,7 +339,8 @@ _eintrnames:
.asciz "netisr_ip"
.asciz "netisr_imp"
.asciz "netisr_ns"
- .asciz "softclock"
+ .asciz "netisr_iso"
+ .asciz "softclock" /* 10 */
.asciz "trap"
.asciz "doreti_exit2"
.asciz "splbio"
@@ -349,17 +350,16 @@ _eintrnames:
.asciz "splnet"
.asciz "splsoftclock"
.asciz "spltty"
- .asciz "spl0"
+ .asciz "spl0" /* 20 */
.asciz "netisr_raw2"
.asciz "netisr_ip2"
+ .asciz "netisr_imp2"
+ .asciz "netisr_ns2"
+ .asciz "netisr_iso2"
.asciz "splx"
.asciz "splx!0"
.asciz "unpend_V"
- .asciz "spl25" /* spl25-spl31 are spares */
- .asciz "spl26"
- .asciz "spl27"
- .asciz "spl28"
- .asciz "spl29"
+ .asciz "spl29" /* spl29-spl31 are spares */
.asciz "spl30"
.asciz "spl31"
/*
diff --git a/sys/amd64/isa/vector.s b/sys/amd64/isa/vector.s
index e56a6b5e4b66..0a1dec99bc4f 100644
--- a/sys/amd64/isa/vector.s
+++ b/sys/amd64/isa/vector.s
@@ -339,7 +339,8 @@ _eintrnames:
.asciz "netisr_ip"
.asciz "netisr_imp"
.asciz "netisr_ns"
- .asciz "softclock"
+ .asciz "netisr_iso"
+ .asciz "softclock" /* 10 */
.asciz "trap"
.asciz "doreti_exit2"
.asciz "splbio"
@@ -349,17 +350,16 @@ _eintrnames:
.asciz "splnet"
.asciz "splsoftclock"
.asciz "spltty"
- .asciz "spl0"
+ .asciz "spl0" /* 20 */
.asciz "netisr_raw2"
.asciz "netisr_ip2"
+ .asciz "netisr_imp2"
+ .asciz "netisr_ns2"
+ .asciz "netisr_iso2"
.asciz "splx"
.asciz "splx!0"
.asciz "unpend_V"
- .asciz "spl25" /* spl25-spl31 are spares */
- .asciz "spl26"
- .asciz "spl27"
- .asciz "spl28"
- .asciz "spl29"
+ .asciz "spl29" /* spl29-spl31 are spares */
.asciz "spl30"
.asciz "spl31"
/*
diff --git a/sys/i386/isa/icu.s b/sys/i386/isa/icu.s
index 5ec301598504..22cec5866f88 100644
--- a/sys/i386/isa/icu.s
+++ b/sys/i386/isa/icu.s
@@ -36,28 +36,7 @@
*
* @(#)icu.s 7.2 (Berkeley) 5/21/91
*
- * PATCHES MAGIC LEVEL PATCH THAT GOT US HERE
- * -------------------- ----- ----------------------
- * CURRENT PATCH LEVEL: 5 00167
- * -------------------- ----- ----------------------
- *
- * 28 Nov 92 Frank MacLachlan Aligned addresses and data
- * on 32bit boundaries.
- * 24 Mar 93 Rodney W. Grimes Added interrupt counters for vmstat
- * also stray and false intr counters added
- * 20 Apr 93 Bruce Evans New npx-0.5 code
- * 25 Apr 93 Bruce Evans Support new interrupt code (intr-0.1)
- * Rodney W. Grimes Reimplement above patches..
- * 17 May 93 Rodney W. Grimes Redid the interrupt counter stuff
- * moved the counters to vectors.s so
- * they are next to the name tables.
- * 04 Jun 93 Bruce Evans Fixed irq_num vs id_num for multiple
- * devices configed on the same irq with
- * respect to ipending. Restructured
- * not to use BUILD_VECTORS.
- * Rodney W. Grimes softsio1 only works if you have sio
- * serial driver, added #include sio.h
- * and #ifdef NSIO > 0 to protect it.
+ * $Id$
*/
/*
@@ -205,20 +184,28 @@ none_to_unpend:
je test_ASTs # no net stuff, just temporary AST's
FASTSPL_VARMASK(_netmask)
DONET(NETISR_RAW, _rawintr, 5)
-#ifdef INET
+
+#ifdef INET
DONET(NETISR_IP, _ipintr, 6)
-#endif
-#ifdef IMP
+#endif /* INET */
+
+#ifdef IMP
DONET(NETISR_IMP, _impintr, 7)
-#endif
-#ifdef NS
+#endif /* IMP */
+
+#ifdef NS
DONET(NETISR_NS, _nsintr, 8)
-#endif
+#endif /* NS */
+
+#ifdef ISO
+ DONET(NETISR_ISO, _clnlintr, 9)
+#endif /* ISO */
+
FASTSPL($0)
test_ASTs:
btrl $NETISR_SCLK,_netisr
jnc test_resched
- COUNT_EVENT(_intrcnt_spl, 9)
+ COUNT_EVENT(_intrcnt_spl, 10)
FASTSPL($SOFTCLOCKMASK)
/*
* Back to an interrupt frame for a moment.
@@ -242,11 +229,11 @@ test_resched:
testb $SEL_RPL_MASK,TRAPF_CS_OFF(%esp)
# to non-kernel (i.e., user)?
je 2f # nope, leave
- COUNT_EVENT(_intrcnt_spl, 10)
+ COUNT_EVENT(_intrcnt_spl, 11)
movl $0,_astpending
call _trap
2:
- COUNT_EVENT(_intrcnt_spl, 11)
+ COUNT_EVENT(_intrcnt_spl, 12)
popl %es
popl %ds
popal
@@ -260,20 +247,20 @@ test_resched:
* -- ipending = active interrupts currently masked by cpl
*/
- GENSPL(bio, _biomask, 12)
- GENSPL(clock, $HIGHMASK, 13) /* splclock == splhigh ex for count */
- GENSPL(high, $HIGHMASK, 14)
- GENSPL(imp, _netmask, 15) /* splimp == splnet except for count */
- GENSPL(net, _netmask, 16)
- GENSPL(softclock, $SOFTCLOCKMASK, 17)
- GENSPL(tty, _ttymask, 18)
+ GENSPL(bio, _biomask, 13)
+ GENSPL(clock, $HIGHMASK, 14) /* splclock == splhigh ex for count */
+ GENSPL(high, $HIGHMASK, 15)
+ GENSPL(imp, _netmask, 16) /* splimp == splnet except for count */
+ GENSPL(net, _netmask, 17)
+ GENSPL(softclock, $SOFTCLOCKMASK, 18)
+ GENSPL(tty, _ttymask, 19)
.globl _splnone
.globl _spl0
ALIGN_TEXT
_splnone:
_spl0:
- COUNT_EVENT(_intrcnt_spl, 19)
+ COUNT_EVENT(_intrcnt_spl, 20)
in_spl0:
movl _cpl,%eax
pushl %eax # save old priority
@@ -285,10 +272,24 @@ in_spl0:
/*
* XXX - what about other net intrs?
*/
- DONET(NETISR_RAW, _rawintr, 20)
-#ifdef INET
- DONET(NETISR_IP, _ipintr, 21)
-#endif
+ DONET(NETISR_RAW, _rawintr, 21)
+
+#ifdef INET
+ DONET(NETISR_IP, _ipintr, 22)
+#endif /* INET */
+
+#ifdef IMP
+ DONET(NETISR_IMP, _impintr, 23)
+#endif /* IMP */
+
+#ifdef NS
+ DONET(NETISR_NS, _nsintr, 24)
+#endif /* NS */
+
+#ifdef ISO
+ DONET(NETISR_ISO, _clnlintr, 25)
+#endif /* ISO */
+
over_net_stuff_for_spl0:
movl $0,_cpl # set new priority
SHOW_CPL
@@ -301,11 +302,11 @@ over_net_stuff_for_spl0:
.globl _splx
ALIGN_TEXT
_splx:
- COUNT_EVENT(_intrcnt_spl, 22)
+ COUNT_EVENT(_intrcnt_spl, 26)
movl 4(%esp),%eax # new priority
testl %eax,%eax
je in_spl0 # going to "zero level" is special
- COUNT_EVENT(_intrcnt_spl, 23)
+ COUNT_EVENT(_intrcnt_spl, 27)
movl _cpl,%edx # save old priority
movl %eax,_cpl # set new priority
SHOW_CPL
@@ -319,7 +320,7 @@ _splx:
unpend_V_result_edx:
pushl %edx
unpend_V:
- COUNT_EVENT(_intrcnt_spl, 24)
+ COUNT_EVENT(_intrcnt_spl, 28)
bsfl %eax,%eax
btrl %eax,_ipending
jnc unpend_V_next
diff --git a/sys/i386/isa/vector.s b/sys/i386/isa/vector.s
index e56a6b5e4b66..0a1dec99bc4f 100644
--- a/sys/i386/isa/vector.s
+++ b/sys/i386/isa/vector.s
@@ -339,7 +339,8 @@ _eintrnames:
.asciz "netisr_ip"
.asciz "netisr_imp"
.asciz "netisr_ns"
- .asciz "softclock"
+ .asciz "netisr_iso"
+ .asciz "softclock" /* 10 */
.asciz "trap"
.asciz "doreti_exit2"
.asciz "splbio"
@@ -349,17 +350,16 @@ _eintrnames:
.asciz "splnet"
.asciz "splsoftclock"
.asciz "spltty"
- .asciz "spl0"
+ .asciz "spl0" /* 20 */
.asciz "netisr_raw2"
.asciz "netisr_ip2"
+ .asciz "netisr_imp2"
+ .asciz "netisr_ns2"
+ .asciz "netisr_iso2"
.asciz "splx"
.asciz "splx!0"
.asciz "unpend_V"
- .asciz "spl25" /* spl25-spl31 are spares */
- .asciz "spl26"
- .asciz "spl27"
- .asciz "spl28"
- .asciz "spl29"
+ .asciz "spl29" /* spl29-spl31 are spares */
.asciz "spl30"
.asciz "spl31"
/*