net: aquantia: Limit number of vectors to actually allocated irqs
authorIgor Russkikh <igor.russkikh@aquantia.com>
Mon, 7 May 2018 13:10:39 +0000 (16:10 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 8 May 2018 04:06:44 +0000 (00:06 -0400)
commita09bd81b5413d1b4d705c6c5303b5d311069da22
treead505327eef2bcdfe6e37361aaf1ea539d1bcf7a
parent8c61ab7f111a2b29d051348b9cb9a39804ebf1f8
net: aquantia: Limit number of vectors to actually allocated irqs

Driver should use pci_alloc_irq_vectors return value to correct number
of allocated vectors and napi instances. Otherwise it'll panic later
in pci_irq_vector.

Driver also should allow more than one MSI vectors to be allocated.

Error return path from pci_alloc_irq_vectors is also fixed to revert
resources in a correct sequence when error happens.

Reported-by: Long, Nicholas <nicholas.a.long@baesystems.com>
Fixes: 23ee07a ("net: aquantia: Cleanup pci functions module")
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/aquantia/atlantic/aq_nic.c
drivers/net/ethernet/aquantia/atlantic/aq_nic.h
drivers/net/ethernet/aquantia/atlantic/aq_pci_func.c