> +static void hpsa_setup_reply_map(struct ctlr_info *h)
> +{
> +     const struct cpumask *mask;
> +     unsigned int queue, cpu;
> +
> +     for (queue = 0; queue < h->msix_vectors; queue++) {
> +             mask = pci_irq_get_affinity(h->pdev, queue);
> +             if (!mask)
> +                     goto fallback;
> +
> +             for_each_cpu(cpu, mask)
> +                     h->reply_map[cpu] = queue;
> +     }
> +     return;
> +
> +fallback:
> +     for_each_possible_cpu(cpu)
> +             h->reply_map[cpu] = 0;
> +}

It seems a little annoying that we have to duplicate this in the driver.
Wouldn't this be solved by your force_blk_mq flag and relying on the
hw_ctx id?

Reply via email to