[dm-devel] dm: reduce the number of processes per dm device

Mike Snitzer snitzer at redhat.com
Thu Oct 8 19:08:18 UTC 2015


On Thu, Oct 08 2015 at 12:15pm -0400,
Mikulas Patocka <mpatocka at redhat.com> wrote:

> The patch 54efd50bfd873e2dbf784e0b21a8027ba4299a3e ("block: make
> generic_make_request handle arbitrarily sized bios") makes it possible for
> block devices to process large bios. The patch allocates a new bio set
> queue->bio_split for each device, this bio set is used for allocating bios
> when the driver needs to split large bios.
> 
> Each bio_set allocates a workqueue process, thus the above patch increases
> the number of processes allocated per block device.
> 
> Device mapper doesn't need the queue->bio_split bio_set, thus we can
> deallocate it. This reduces the number of allocated processes per
> dm-device from 3 to 2.

This header needs more context added, specifically we need to tell the
reader the answer to: why doesn't DM need queue->bio_split?

Is this a resource that only the lowest layer's request_queue would
need?  And given DM's stacking nature it doesn't need it simply because
it'll never be the lowest layer?




More information about the dm-devel mailing list