DRIVE
case DRIVE:
{ "drive", DRIVE, VERB, NULL },
{ "start", DRIVE, VERB, NULL },
if (DRIVE != NULL) {
free_drive(&DRIVE[i]); /* close files and things */
Free(DRIVE);
DRIVE = (struct drive *) Malloc(sizeof(struct drive) * INITIAL_DRIVES);
CHECKALLOC(DRIVE, "vinum: no memory\n");
bzero(DRIVE, sizeof(struct drive) * INITIAL_DRIVES);
struct drive *drive = &DRIVE[driveno];
drive = &DRIVE[sd->driveno]; /* and drive */
if (DRIVE[driveno].state == drive_unallocated) /* bingo */
EXPAND(DRIVE, struct drive, vinum_conf.drives_allocated, INITIAL_DRIVES);
drive = &DRIVE[driveno];
drive = &DRIVE[driveno]; /* point to drive */
drive = &DRIVE[driveno];
drive = &DRIVE[driveno];
drive = &DRIVE[driveno];
drive = &DRIVE[driveno];
drive = &DRIVE[driveno]; /* and get a pointer */
DRIVE[otherdriveno].label.name);
DRIVE[rqe->driveno].label.name,
DRIVE[rqe->driveno].lasterror = rq->error;
DRIVE[rqe->driveno].reads++;
DRIVE[rqe->driveno].bytes_read += bp->b_bcount;
DRIVE[rqe->driveno].writes++;
DRIVE[rqe->driveno].bytes_written += bp->b_bcount;
DRIVE[sbp->driveno].reads++;
DRIVE[sbp->driveno].bytes_read += sbp->b.b_bcount;
DRIVE[sbp->driveno].writes++;
DRIVE[sbp->driveno].bytes_written += sbp->b.b_bcount;
drive = &DRIVE[rqe->driveno]; /* drive to access */
drive = &DRIVE[rqe->driveno]; /* drive to access */
drive = &DRIVE[rqe->driveno];
&&(DRIVE[i].state != drive_unallocated) /* and it's allocated */
&&(strcmp(DRIVE[i].label.name,
DRIVE[driveno].label.name) == 0)) { /* and it has the same name */
struct drive *mydrive = &DRIVE[i];
drive = &DRIVE[drivelist[driveno]]; /* point to the drive */
const struct drive *a = &DRIVE[*(const int *) va];
const struct drive *b = &DRIVE[*(const int *) vb];
bcopy(&DRIVE[index], data, sizeof(struct drive));
||(DRIVE[index].state == drive_unallocated)) {
} else if (fe >= DRIVE[index].freelist_entries) {
bcopy(&DRIVE[index].freelist[fe], data,
&& (DRIVE[driveno].state > drive_referenced))
return &DRIVE[driveno];
struct drive *drive = &DRIVE[msg->index];
drive = &DRIVE[rqe->driveno]; /* look at drive */
bp->b_bio1.bio_driver_info = DRIVE[rqe->driveno].dev; /* drive device */
drive = &DRIVE[sd->driveno];
DRIVE[msg->index].state = msg->state;
if (DRIVE[sd->driveno].state != drive_up) /* can't bring the sd up if the drive isn't, */
drive = &DRIVE[sd->driveno];
struct drive *drive = &DRIVE[driveno];
if (DRIVE[objindex].state != drive_up) /* set status on whether we really did it */
if (DRIVE[SD[objindex].driveno].state != drive_up) {
%token DRIVE
DRIVE NUMBER { cur.d_drive = $2; }