Message ID | 20240418021557.5166-1-duanqiangwen@net-swift.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 69197dfc64007b5292cc960581548f41ccd44828 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] net: libwx: fix alloc msix vectors failed | expand |
Hello: This patch was applied to netdev/net.git (main) by David S. Miller <davem@davemloft.net>: On Thu, 18 Apr 2024 10:15:56 +0800 you wrote: > driver needs queue msix vectors and one misc irq vector, > but only queue vectors need irq affinity. > when num_online_cpus is less than chip max msix vectors, > driver will acquire (num_online_cpus + 1) vecotrs, and > call pci_alloc_irq_vectors_affinity functions with affinity > params without setting pre_vectors or post_vectors, it will > cause return error code -ENOSPC. > Misc irq vector is vector 0, driver need to set affinity params > .pre_vectors = 1. > > [...] Here is the summary with links: - [net] net: libwx: fix alloc msix vectors failed https://git.kernel.org/netdev/net/c/69197dfc6400 You are awesome, thank you!
diff --git a/drivers/net/ethernet/wangxun/libwx/wx_lib.c b/drivers/net/ethernet/wangxun/libwx/wx_lib.c index 6dff2c85682d..6fae161cbcb8 100644 --- a/drivers/net/ethernet/wangxun/libwx/wx_lib.c +++ b/drivers/net/ethernet/wangxun/libwx/wx_lib.c @@ -1598,7 +1598,7 @@ static void wx_set_num_queues(struct wx *wx) */ static int wx_acquire_msix_vectors(struct wx *wx) { - struct irq_affinity affd = {0, }; + struct irq_affinity affd = { .pre_vectors = 1 }; int nvecs, i; /* We start by asking for one vector per queue pair */
driver needs queue msix vectors and one misc irq vector, but only queue vectors need irq affinity. when num_online_cpus is less than chip max msix vectors, driver will acquire (num_online_cpus + 1) vecotrs, and call pci_alloc_irq_vectors_affinity functions with affinity params without setting pre_vectors or post_vectors, it will cause return error code -ENOSPC. Misc irq vector is vector 0, driver need to set affinity params .pre_vectors = 1. Fixes: 3f703186113f ("net: libwx: Add irq flow functions") Signed-off-by: Duanqiang Wen <duanqiangwen@net-swift.com> --- drivers/net/ethernet/wangxun/libwx/wx_lib.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)