Messages in this thread | | | Subject | Re: [PATCH 1/3] blk-mq: add an API to estimate hardware queue node | From | Jens Axboe <> | Date | Tue, 29 Mar 2016 10:50:11 -0600 |
| |
On 03/29/2016 10:47 AM, Shaohua Li wrote: > On Tue, Mar 29, 2016 at 12:24:43AM -0700, Christoph Hellwig wrote: >> On Fri, Mar 25, 2016 at 02:36:30PM -0700, Shaohua Li wrote: >>> we allocate most data structure in device's node, but some data >>> structures are not for DMA and mostly used by specific cpus/node which >>> could diff from device's node. Allocating such hot data in device's >>> node doesn't make sense. Add an API to estimate hardware queue node. >>> This can be used before blk-mq actually establishes the mapping. This >>> API runs slow, but it only used in initialization time. >> >> I think this is the wrong way around. I've got some proprotype code >> that just leaves the cpu assignments to the drivers and picks it up >> in blk-mq. Give me a few days to post it.. > > This looks weird, shouldn't the cpu assignment be determined by block > core (blk-mq) because block core decides how to use the queue?
I agree, that belongs in the blk-mq proper, the driver should just follow the rules outlined, not impose their own in this regard. It'll also help with irq affinity mappings, once we get that in.
-- Jens Axboe
| |