diff options
author | David Greenman <dg@FreeBSD.org> | 1995-07-05 07:21:34 +0000 |
---|---|---|
committer | David Greenman <dg@FreeBSD.org> | 1995-07-05 07:21:34 +0000 |
commit | 9f77221854354319fb86ffedaa5333ff66e77e71 (patch) | |
tree | 1d0a0c503ba21cb248feb57cb63347ae6feb7649 /sys/i386/isa | |
parent | bc8e373c9bc14504e443c2b00fc2eaa7ae4b0441 (diff) | |
download | src-9f77221854354319fb86ffedaa5333ff66e77e71.tar.gz src-9f77221854354319fb86ffedaa5333ff66e77e71.zip |
Protected entire epioctl routine with splimp(). In this case, it is better
form to do this than it is relying on individual subroutines (the logic
in epioctl is itself very minimal). Ideally, unnecessary splimp()'s should
now be removed if they exist; I'll leave this for a later date (a complete
code review of the driver needs to be done). Fixes a bug I noticed that
would show up when ifconfig'ing the interface down.
Notes
Notes:
svn path=/head/; revision=9404
Diffstat (limited to 'sys/i386/isa')
-rw-r--r-- | sys/i386/isa/if_ep.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/i386/isa/if_ep.c b/sys/i386/isa/if_ep.c index 3b677d6a9994..5e249de062d8 100644 --- a/sys/i386/isa/if_ep.c +++ b/sys/i386/isa/if_ep.c @@ -38,7 +38,7 @@ */ /* - * $Id: if_ep.c,v 1.27 1995/05/27 04:40:57 davidg Exp $ + * $Id: if_ep.c,v 1.28 1995/05/30 08:02:07 rgrimes Exp $ * * Promiscuous mode added and interrupt logic slightly changed * to reduce the number of adapter failures. Transceiver select @@ -1129,6 +1129,8 @@ epioctl(ifp, cmd, data) struct ifreq *ifr = (struct ifreq *) data; int s, error = 0; + s = splimp(); + switch (cmd) { case SIOCSIFADDR: ifp->if_flags |= IFF_UP; @@ -1210,6 +1212,9 @@ epioctl(ifp, cmd, data) default: error = EINVAL; } + + splx(s); + return (error); } |