delay initializing queue for request-based dm
cover delay initializing queue for request-based dm
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
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.
Thanks
Nikanth
v2 cover delay initializing queue for request-based dm
Quoted 10 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.
Quoted 9 lines
[PATCH 1/2] Allow delaying initialization of queue after allocation
[PATCH 2/2] Initialize mempool and elevator only for request-based dm devices
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.
Thanks
Nikanth
v3 cover 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 ofa4e7d46407d73f35d217013b363b79a8f8eafcaa
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