blk-mq and interrupt affinity
Hi all,
Looking through the blk-mq code I tried to figure out if and how the driver is supposed to set any interrupt affinity when block-mq is enabled.
Thing is, for your typical driver you would set the interrupt affinity during init time (eg for SCSI drivers during host_alloc). But to set the interrupt affinity you'd need the cpumask, which is only populated way later during queue setup.
So now I got two bad choices: either I have to delay setting the interrupt affinity until after the queue is created, making things awkward with several queues, or I have to out-guess the blk-mq mapping algorithm and set the interrupt affinity prior to queue setup.
Tests with the lpfc driver found that one absolutely _does_ want to do irq affinity; not doing so limits the performance to single-queue results.
So what is the expected strategy here?
Or am I just too stupid to find it?
Cheers,
Hannes
Signature · 9 lines
Dr. Hannes Reinecke Teamlead Storage & Networking [email protected] +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg) -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html