[dm-devel] Re: [PATCH] dm: dm_table_unplug_all optimization

Jens Axboe jens.axboe at oracle.com
Wed Apr 9 08:15:23 UTC 2008


On Tue, Apr 08 2008, Mike Anderson wrote:
> Performance optimization for high contention of the q->queue_lock under
> certain workloads.
> 
> Signed-off-by: Mike Anderson <andmike at linux.vnet.ibm.com>

Acked-by: Jens Axboe <jens.axboe at oracle.com>

> ---
> 
>  drivers/md/dm-table.c |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/md/dm-table.c b/drivers/md/dm-table.c
> index e75b143..f4c8c1b 100644
> --- a/drivers/md/dm-table.c
> +++ b/drivers/md/dm-table.c
> @@ -1012,7 +1012,8 @@ void dm_table_unplug_all(struct dm_table *t)
>  	list_for_each_entry(dd, devices, list) {
>  		struct request_queue *q = bdev_get_queue(dd->bdev);
>  
> -		blk_unplug(q);
> +		if (blk_queue_plugged(q))
> +			blk_unplug(q);
>  	}
>  }
>  
> 

-- 
Jens Axboe




More information about the dm-devel mailing list