aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Lehey <grog@FreeBSD.org>2002-01-30 01:44:14 +0000
committerGreg Lehey <grog@FreeBSD.org>2002-01-30 01:44:14 +0000
commit2e031e8eba932d1e2d14bcbc6a839ff325911d66 (patch)
treed2be474284439419fb728677f048f6c94f0f101c
parentaf862a47cbe8d61db02185af60e82c73989ead3c (diff)
downloadsrc-2e031e8eba932d1e2d14bcbc6a839ff325911d66.tar.gz
src-2e031e8eba932d1e2d14bcbc6a839ff325911d66.zip
MFC: remove extraneous setjmp, add a panic if we try to longjmp
without holding the config lock.
Notes
Notes: svn path=/stable/3/; revision=89975
-rw-r--r--sys/dev/vinum/vinumconfig.c2
-rw-r--r--sys/dev/vinum/vinumioctl.c3
2 files changed, 2 insertions, 3 deletions
diff --git a/sys/dev/vinum/vinumconfig.c b/sys/dev/vinum/vinumconfig.c
index 06850c8865c9..727660eae497 100644
--- a/sys/dev/vinum/vinumconfig.c
+++ b/sys/dev/vinum/vinumconfig.c
@@ -99,6 +99,8 @@ throw_rude_remark(int error, char *msg,...)
static int finishing; /* don't recurse */
int was_finishing;
+ if ((vinum_conf.flags & VF_LOCKED) == 0) /* bug catcher */
+ panic ("throw_rude_remark: called without config lock");
va_start(ap, msg);
if ((ioctl_reply != NULL) /* we're called from the user */
&&(!(vinum_conf.flags & VF_READING_CONFIG))) { /* and not reading from disk: return msg */
diff --git a/sys/dev/vinum/vinumioctl.c b/sys/dev/vinum/vinumioctl.c
index 309448a37a85..0501b9c8cfe3 100644
--- a/sys/dev/vinum/vinumioctl.c
+++ b/sys/dev/vinum/vinumioctl.c
@@ -82,9 +82,6 @@ vinumioctl(dev_t dev,
switch (DEVTYPE(dev)) {
case VINUM_SUPERDEV_TYPE: /* ordinary super device */
ioctl_reply = (struct _ioctl_reply *) data; /* save the address to reply to */
- error = setjmp(command_fail); /* come back here on error */
- if (error) /* bombed out */
- return 0; /* the reply will contain meaningful info */
switch (cmd) {
#ifdef VINUMDEBUG
case VINUM_DEBUG: