On Fri, Apr 25, 2025 at 03:54:38AM -0700, Shradha Gupta wrote: > Currently, the MANA driver allocates MSI-X vectors statically based on > MANA_MAX_NUM_QUEUES and num_online_cpus() values and in some cases ends > up allocating more vectors than it needs. This is because, by this time > we do not have a HW channel and do not know how many IRQs should be > allocated. > > To avoid this, we allocate 1 MSI-X vector during the creation of HWC and > after getting the value supported by hardware, dynamically add the > remaining MSI-X vectors. > > Signed-off-by: Shradha Gupta <shradhagu...@linux.microsoft.com> > Reviewed-by: Haiyang Zhang <haiya...@microsoft.com> > --- > Changes in v2: > * Use string 'MSI-X vectors' instead of 'pci vectors' > * make skip-cpu a bool instead of int > * rearrange the comment arout skip_cpu variable appropriately > * update the capability bit for driver indicating dynamic IRQ allocation > * enforced max line length to 80 > * enforced RCT convention > * initialized gic to NULL, for when there is a possibility of gic > not being populated correctly > --- > .../net/ethernet/microsoft/mana/gdma_main.c | 323 ++++++++++++++---- > include/net/mana/gdma.h | 11 +- > 2 files changed, 269 insertions(+), 65 deletions(-)
To me, this patch looks too big, and it doesn't look like it does exactly one thing. Can you split it to a few small more reviewable chunks? For example, I authored irq_setup() helper. If you split its rework and make it a small preparation patch, I'll be able to add my review tag. Thanks, Yury