Skip to content

delay initializing queue for request-based dm

Nikanth Karthikesan dm-devel lkml 3 versions – New

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest2 patches 0 repliesNew
  2. v22 patches 6 repliesSuperseded
  3. v12 patches 5 repliesSuperseded

Changes in v3 from the cover letter

1. Add comments suggested by Kiyoshi Ueda
2. Export symbol elv_register_queue() to modules.
3. Call elv_register_queue() after initializing the queue to use the elevator.

Patches in v3 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/2Allow delaying initialization of queue after allocationblock/blk-core.c block/elevator.c include/linux/blkdev.h+35 -90 replies
2/2Initialize mempool and elevator only for request-based dm devicesdrivers/md/dm.c+30 -70 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v3 yet.

Read the v3 thread

Cover letter [PATCH-v3 0/2] delay initializing queue for request-based dm
Quoted 16 lines · On Monday 10 August 2009 16:18:12 Nikanth Karthikesan wrote:
Quoted 15 lines · On Saturday 08 August 2009 10:25:53 Nikanth Karthikesan wrote:

Hi

Currently for device-mapper devices, we initialize the mempool for requests and elevator at device creation time. But only request-based devices use the elevator and mempool. These patches change it to allocate the mempool and initialize the elevator only for request-based devices. This is done by allocating a queue at device creation time, but delaying the initialization of elevator and allocation of mempool till the first table load time, when the type of device would be known.

[PATCH 1/2] Allow delaying initialization of queue after allocation

[PATCH 2/2] Initialize mempool and elevator only for request-based dm devices

Quoted 9 lines
Quoted 3 lines

Another approach would be to free the mempool and detach elevator, if it would be a bio-based device. But it is better to avoid initialization itself.

Changes since v1:
1. Refreshed on top of a4e7d46407d73f35d217013b363b79a8f8eafcaa
2. Added comments suggested by Mike Snitzer.
3. Cleaned up the second patch as suggested by Mike Snitzer.

Changes since v2:
1. Add comments suggested by Kiyoshi Ueda
2. Export symbol elv_register_queue() to modules.
3. Call elv_register_queue() after initializing the queue to use the elevator.

Thanks
Nikanth