/* * add a block list to a queue */ void qaddlist(struct queue *q, struct block *b) { /* TODO: q lock? */ /* queue the block */ if (q->bfirst) q->blast->next = b; else q->bfirst = b; q->len += blockalloclen(b); q->dlen += blocklen(b); while (b->next) b = b->next; q->blast = b; }
/* * add a block list to a queue */ void qaddlist(Queue *q, Block *b) { /* queue the block */ if(q->bfirst) q->blast->next = b; else q->bfirst = b; q->len += blockalloclen(b); q->dlen += blocklen(b); while(b->next) b = b->next; q->blast = b; }