Re: [PATCH V3 0/4] genirq/affinity: irq vector spread among online CPUs as far as possible

From: Ming Lei
Date: Thu Mar 08 2018 - 20:25:18 EST


Hi Thomas,

On Fri, Mar 09, 2018 at 12:20:09AM +0100, Thomas Gleixner wrote:
> On Thu, 8 Mar 2018, Ming Lei wrote:
> > Actually, it isn't a real fix, the real one is in the following two:
> >
> > 0c20244d458e scsi: megaraid_sas: fix selection of reply queue
> > ed6d043be8cd scsi: hpsa: fix selection of reply queue
>
> Where are these commits? Neither Linus tree not -next know anything about
> them....

Both aren't merged yet, but they should land V4.16, IMO.

>
> > This patchset can't guarantee that all IRQ vectors are assigned by one
> > online CPU, for example, in a quad-socket system, if only one processor
> > is present, then some of vectors are still assigned by all offline CPUs,
> > and it is a valid case, but still may cause io hang if drivers(hpsa,
> > megaraid_sas) select reply queue in current way.
>
> So my understanding is that these irq patches are enhancements and not bug
> fixes. I'll queue them for 4.17 then.

Wrt. this IO hang issue, these patches shouldn't be bug fix, but they may
fix performance regression[1] for some systems caused by 84676c1f21 ("genirq/affinity:
assign vectors to all possible CPUs").

[1] https://marc.info/?l=linux-block&m=152050347831149&w=2

Thanks,
Ming