projects
/
unix-history
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
tags
|
clone url
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
must splimp before messing with inqueues if device interrupts at lower ipl
[unix-history]
/
usr
/
src
/
sys
/
vax
/
if
/
if_en.c
diff --git
a/usr/src/sys/vax/if/if_en.c
b/usr/src/sys/vax/if/if_en.c
index
eefec06
..
4a9948d
100644
(file)
--- a/
usr/src/sys/vax/if/if_en.c
+++ b/
usr/src/sys/vax/if/if_en.c
@@
-1,4
+1,4
@@
-/* if_en.c 6.
2 84/04/12
*/
+/* if_en.c 6.
3 84/05/18
*/
#include "en.h"
#include "en.h"
@@
-364,7
+364,7
@@
enrint(unit)
struct mbuf *m;
int len; short resid;
register struct ifqueue *inq;
struct mbuf *m;
int len; short resid;
register struct ifqueue *inq;
- int off;
+ int off
, s
;
es->es_if.if_ipackets++;
es->es_if.if_ipackets++;
@@
-453,11
+453,13
@@
enrint(unit)
goto setup;
}
goto setup;
}
+ s = splimp();
if (IF_QFULL(inq)) {
IF_DROP(inq);
m_freem(m);
} else
IF_ENQUEUE(inq, m);
if (IF_QFULL(inq)) {
IF_DROP(inq);
m_freem(m);
} else
IF_ENQUEUE(inq, m);
+ splx(s);
setup:
/*
setup:
/*