Re: [RFC V2 PATCH 2/5] cfq-iosched: preparation to handle multiple service trees

From: Jeff Moyer
Date: Wed Oct 21 2009 - 11:32:03 EST


Corrado Zoccolo <czoccolo@xxxxxxxxx> writes:

> We embed a pointer to the service tree in each queue, to handle multiple
> service trees easily.
> Service trees are enriched with a counter.
> cfq_add_rq_rb is invoked after putting the rq in the fifo, to ensure
> that all fields in rq are properly initialized.
>
> @@ -115,6 +116,9 @@ struct cfq_queue {
> unsigned short ioprio_class, org_ioprio_class;
>
> pid_t pid;
> +
> + struct cfq_rb_root *service_tree;
> + struct cfq_io_context *cic;
> };

This change worries me. For async queues, there is not a 1:1 mapping
between cfqq and cic. With my forthcoming close cooperator changes, the
same will be true for sync queues.

Cheers,
Jeff
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/