Hi Marc, in general the driver should know not to use the queue / irq, as blk-mq will never schedule I/O to queues that have no online cpus.
The real bugs seems to be that we're using affinity for a device that only has one real queue (as the config queue should not have affinity). Let me dig into what's going on here with virtio.