Corinna Vinschen
218c597325
net: stmmac: fix up RX flow hash indirection table when setting channels
...
stmmac_reinit_queues() fails to fix up the RX hash. Even if the number
of channels gets restricted, the output of `ethtool -x' indicates that
all RX queues are used:
$ ethtool -l enp0s29f2
Channel parameters for enp0s29f2:
Pre-set maximums:
RX: 8
TX: 8
Other: n/a
Combined: n/a
Current hardware settings:
RX: 8
TX: 8
Other: n/a
Combined: n/a
$ ethtool -x enp0s29f2
RX flow hash indirection table for enp0s29f2 with 8 RX ring(s):
0: 0 1 2 3 4 5 6 7
8: 0 1 2 3 4 5 6 7
[...]
$ ethtool -L enp0s29f2 rx 3
$ ethtool -x enp0s29f2
RX flow hash indirection table for enp0s29f2 with 3 RX ring(s):
0: 0 1 2 3 4 5 6 7
8: 0 1 2 3 4 5 6 7
[...]
Fix this by setting the indirection table according to the number
of specified queues. The result is now as expected:
$ ethtool -L enp0s29f2 rx 3
$ ethtool -x enp0s29f2
RX flow hash indirection table for enp0s29f2 with 3 RX ring(s):
0: 0 1 2 0 1 2 0 1
8: 2 0 1 2 0 1 2 0
[...]
Tested on Intel Elkhart Lake.
Fixes: 0366f7e06a6b ("net: stmmac: add ethtool support for get/set channels")
Signed-off-by: Corinna Vinschen <vinschen@redhat.com>
Link: https://lore.kernel.org/r/20230403121120.489138-1-vinschen@redhat.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
2023-04-04 15:17:15 +02:00
..
2023-03-24 10:52:20 +01:00
2023-03-24 13:45:58 -07:00
2023-02-24 12:47:33 -08:00
2023-03-16 16:54:38 +09:00
2023-03-21 20:19:28 -07:00
2023-03-05 11:19:16 -08:00
2023-03-20 20:01:25 -06:00
2023-03-23 13:09:38 -07:00
2023-03-14 11:43:51 +08:00
2023-03-12 23:28:10 +02:00
2023-03-06 14:41:20 -08:00
2023-02-21 09:45:13 -08:00
2023-03-03 10:30:58 -08:00
2023-03-07 14:04:13 +01:00
2023-03-05 11:32:30 -08:00
2023-02-25 09:19:23 -08:00
2023-02-25 09:19:23 -08:00
2023-02-24 17:18:54 -08:00
2023-02-17 09:16:34 +01:00
2023-02-21 08:10:03 -08:00
2023-02-04 13:05:42 +00:00
2023-02-24 12:58:55 -08:00
2023-03-24 15:38:13 -07:00
2023-02-24 12:58:55 -08:00
2023-03-07 14:15:10 +01:00
2023-03-30 20:15:07 +02:00
2023-03-09 10:17:23 -08:00
2023-02-24 12:58:55 -08:00
2023-02-24 12:58:55 -08:00
2023-03-21 19:14:55 -07:00
2023-02-24 12:58:55 -08:00
2023-03-16 21:15:43 +01:00
2023-02-28 16:05:01 -08:00
2023-02-21 12:13:58 -08:00
2023-02-24 12:47:33 -08:00
2023-02-24 15:11:03 -08:00
2023-02-27 10:04:49 -08:00
2023-03-13 21:13:48 +02:00
2023-02-27 10:04:49 -08:00
2023-02-24 12:58:55 -08:00
2023-02-25 11:30:21 -08:00
2023-02-23 15:09:31 -08:00
2023-02-25 11:00:06 -08:00
2023-02-23 14:47:13 -06:00
2023-03-30 15:54:32 -04:00
2023-03-18 11:07:15 -07:00
2023-03-13 21:13:49 +02:00
2023-02-27 09:47:26 -08:00
2023-02-27 14:05:08 -08:00
2023-03-09 21:58:45 +01:00
2023-03-09 15:33:51 +01:00
2023-03-27 09:41:17 -07:00
2023-04-04 15:17:15 +02:00
2023-03-15 00:28:23 -07:00
2023-02-25 11:48:02 -08:00
2023-03-22 09:17:52 +01:00
2023-03-10 10:55:49 +01:00
2023-02-24 13:40:13 -08:00
2023-02-16 13:48:53 +01:00
2023-02-24 12:47:33 -08:00
2023-03-13 09:15:11 +01:00
2023-02-24 12:58:55 -08:00
2023-03-03 09:32:51 -08:00
2023-02-27 10:04:49 -08:00
2023-02-27 10:04:49 -08:00
2023-03-27 09:45:39 -07:00
2023-03-12 23:28:04 +01:00
2023-03-03 10:30:58 -08:00
2023-03-24 19:17:22 -07:00
2023-02-20 12:26:35 +01:00
2023-03-02 09:21:25 -08:00
2023-02-27 10:04:49 -08:00
2023-02-26 12:10:28 -08:00
2023-03-03 09:15:50 -08:00
2023-03-27 17:23:08 +02:00
2023-02-09 16:51:39 -08:00
2023-03-24 08:27:13 -07:00
2023-03-01 09:44:22 -08:00
2023-03-06 20:13:06 -08:00
2023-02-24 17:29:52 -08:00
2023-03-02 09:25:38 -08:00
2023-03-09 10:06:28 +01:00
2023-03-06 16:50:42 -05:00
2023-03-17 15:30:31 +01:00
2023-03-24 17:11:27 +01:00
2023-03-20 19:00:58 +02:00
2023-03-24 09:44:43 -07:00
2023-03-09 21:09:28 -05:00
2023-02-23 17:09:35 -08:00
2023-03-23 19:13:16 +01:00
2023-03-13 02:29:12 -04:00
2023-03-13 12:50:59 -06:00
2023-03-13 02:29:11 -04:00
2023-03-18 16:01:34 -07:00
2023-03-13 13:29:27 +01:00
2023-02-25 11:48:02 -08:00
2023-03-09 21:58:57 +01:00
2023-03-02 11:12:01 -08:00
2023-03-17 10:45:49 -07:00
2023-02-26 11:53:25 -08:00