summaryrefslogtreecommitdiffstats
path: root/sys/dev/vinum/vinumioctl.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/vinum/vinumioctl.c')
-rw-r--r--sys/dev/vinum/vinumioctl.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/sys/dev/vinum/vinumioctl.c b/sys/dev/vinum/vinumioctl.c
index 6dbe3c6..fd91f79 100644
--- a/sys/dev/vinum/vinumioctl.c
+++ b/sys/dev/vinum/vinumioctl.c
@@ -35,7 +35,7 @@
* otherwise) arising in any way out of the use of this software, even if
* advised of the possibility of such damage.
*
- * $Id: vinumioctl.c,v 1.1 1998/08/14 08:46:10 grog Exp grog $
+ * $Id: vinumioctl.c,v 1.3 1998/09/29 05:26:37 grog Exp grog $
*/
#define STATIC /* nothing while we're testing XXX */
@@ -45,6 +45,7 @@
#include "sys/sysproto.h" /* for sync(2) */
#ifdef DEBUG
#include <sys/reboot.h>
+#include "request.h"
#endif
jmp_buf command_fail; /* return on a failed command */
@@ -97,17 +98,21 @@ vinumioctl(dev_t dev,
if (error) /* bombed out */
return 0; /* the reply will contain meaningful info */
switch (cmd) {
- /* XXX #ifdef DEBUG */
+#ifdef DEBUG
case VINUM_DEBUG:
- boothowto |= RB_GDB; /* serial debug line */
if (((struct debuginfo *) data)->changeit) /* change debug settings */
debug = (((struct debuginfo *) data)->param);
- else
+ else {
+ if (debug & DEBUG_REMOTEGDB)
+ boothowto |= RB_GDB; /* serial debug line */
+ else
+ boothowto &= ~RB_GDB; /* local ddb */
Debugger("vinum debug");
+ }
ioctl_reply = (struct _ioctl_reply *) data; /* reinstate the address to reply to */
ioctl_reply->error = 0;
return 0;
- /* XXX #endif */
+#endif
case VINUM_CREATE: /* create a vinum object */
error = lock_config(); /* get the config for us alone */
@@ -222,6 +227,9 @@ vinumioctl(dev_t dev,
case VINUM_MALLOCINFO:
return vinum_mallocinfo(data);
+ case VINUM_RQINFO:
+ return vinum_rqinfo(data);
+
case VINUM_LABEL: /* label a volume */
ioctl_reply->error = write_volume_label(*(int *) data); /* index of the volume to label */
ioctl_reply->msg[0] = '\0'; /* no message */
OpenPOWER on IntegriCloud