Re: [RFC PATCH v3] genirq/affinity: Create and transfer more irq desc info by a new structure

From: Dou Liyang
Date: Thu Nov 29 2018 - 09:30:50 EST


Hi Bjorn,

on 2018/11/29 4:00, Bjorn Helgaas wrote:
[+cc linux-pci]
Since you mention reports, are there URLs to mailing list archives you
can include?
OK, I will add it:

https://marc.info/?l=linux-kernel&m=153543887027997&w=2

- entry = alloc_msi_entry(&dev->dev, nvec, masks);
+ entry = alloc_msi_entry(&dev->dev, nvec, affi_desc);

Can you split this into two or more patches? Most of these changes

Yes, next non-RFC version will do.

are trivial and not very interesting, and the fact that they're all in
one patch makes it hard to find and review the interesting bits. For
example,

1) Rename all the local variables while keeping the type the same
(or just leave the name the same; I think "affinity" would be a fine
name, and I would be OK if we ended up with "struct irq_affinity_desc
*masks" or "struct irq_affinity_desc *affinity"). This patch would
obviously have no functional impact and would remove a lot of the
trivial changes.
Oops, how stupid I am !

2) Add "struct irq_affinity_desc" containing only "struct cpumask
masks" and irq_create_affinity_desc() (or leave the name as
irq_create_affinity_masks() and adjust the signature). This would
also have no functional impact and would be a fairly trivial patch.
> 3) Add "flags" to struct irq_affinity_desc and the related code.
This is the real meat of your patch, and with the above out of the
way, it will be much smaller and it'll be obvious what the important
changes are.

I see, :)

Thanks,
dou