vinumioctl: Fix a double fault caused by calling setjmp() without holding the config lock. The call was in fact superfluous.
This commit is contained in:
parent
666d94f4b0
commit
ebd9d88d03
@ -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 */
|
||||
|
@ -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:
|
||||
|
Loading…
Reference in New Issue
Block a user