mirror of
https://github.com/torvalds/linux.git
synced 2026-10-07 19:16:02 +02:00
eth: fbnic: Handle maximum standalone channels
Standalone channels use one NAPI vector for each Tx and Rx queue.
fbnic's allocation path excludes FBNIC_MAX_TXQS from that layout. A
64-Tx/64-Rx configuration therefore records 128 vectors but allocates
only 64, leaving NULL entries that resource setup dereferences.
Include the maximum vector count in standalone allocation.
Fixes: bc6107771b ("eth: fbnic: Allocate a netdevice and napi vectors with queues")
Signed-off-by: Björn Töpel <bjorn@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/178942020457.7700.13129750616387075931.stgit@ahduyck-xeon-server.home.arpa
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
1b82958f3f
commit
1f4c73064a
|
|
@ -1791,7 +1791,7 @@ int fbnic_alloc_napi_vectors(struct fbnic_net *fbn)
|
|||
int err;
|
||||
|
||||
/* Allocate 1 Tx queue per napi vector */
|
||||
if (num_napi < FBNIC_MAX_TXQS && num_napi == num_tx + num_rx) {
|
||||
if (num_napi <= FBNIC_MAX_TXQS && num_napi == num_tx + num_rx) {
|
||||
while (num_tx) {
|
||||
err = fbnic_alloc_napi_vector(fbd, fbn,
|
||||
num_napi, v_idx,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user