All of lore.kernel.org
 help / color / mirror / Atom feed
* [linux-lvm] dm, dm_table, request_queue
@ 2004-02-23 11:30 Miquel van Smoorenburg
  2004-02-23 15:36 ` [linux-lvm] " Joe Thornber
  0 siblings, 1 reply; 5+ messages in thread
From: Miquel van Smoorenburg @ 2004-02-23 11:30 UTC (permalink / raw)
  To: linux-lvm; +Cc: thornber

I'm implementing congestion queue management as discussed in the
"IO scheduler, queue depth, nr_requests" thread.

I've added a list of "parent queues" to the struct request_queue,
and if the queue is marked as congested, so are the "parent queues".

Now dm needs to be able to say "add this request_queue to the
list of parent" for a device.

But in dm_table, I cannot get at the request_queue of the dm device.
From a quick look at the code, it seems that tables are never changed
"on the fly", but built in advance and then __bind is used to bind
a table to a device.

If that is the case, then I could iterate over the devices in __bind
and call blk_queue_add_parent(dm_dev->bdev->queue, mapped_device->queue)
(and blk_queue_remove_parent in __unbind)

Is that correct ?

And, in general, do you feel this is the correct solution ? Now
request_queues know what their parents are, does that complicate
things like "dm" too much or is it OK ?

Mike.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2004-02-24 10:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-02-23 11:30 [linux-lvm] dm, dm_table, request_queue Miquel van Smoorenburg
2004-02-23 15:36 ` [linux-lvm] " Joe Thornber
2004-02-23 19:20   ` Miquel van Smoorenburg
2004-02-24  4:02     ` Joe Thornber
2004-02-24  5:26       ` Miquel van Smoorenburg

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.