Re: [RFC PATCH 1/2] bdev: add support for CPU latency PM QoS tuning
From: Jens Axboe
Date: Thu Aug 29 2024 - 07:38:02 EST
On 8/29/24 1:18 AM, Tero Kristo wrote:
> diff --git a/block/bio.c b/block/bio.c
> index e9e809a63c59..6c46d75345d7 100644
> --- a/block/bio.c
> +++ b/block/bio.c
> @@ -282,6 +282,8 @@ void bio_init(struct bio *bio, struct block_device *bdev, struct bio_vec *table,
> bio->bi_max_vecs = max_vecs;
> bio->bi_io_vec = table;
> bio->bi_pool = NULL;
> +
> + bdev_update_cpu_latency_pm_qos(bio->bi_bdev);
> }
> EXPORT_SYMBOL(bio_init);
This is entirely the wrong place to do this, presumably it should be
done at IO dispatch time, not when something initializes a bio.
And also feels like entirely the wrong way to go about this, adding
overhead to potentially each IO dispatch, of which there can be millions
per second.
--
Jens Axboe