1
0
Fork 0
mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-01-22 07:53:11 -05:00
linux/net/ethtool
Kory Maincent 910c4788d6 ethtool: Fix wrong mod state in case of verbose and no_mask bitset
A bitset without mask in a _SET request means we want exactly the bits in
the bitset to be set. This works correctly for compact format but when
verbose format is parsed, ethnl_update_bitset32_verbose() only sets the
bits present in the request bitset but does not clear the rest. The commit
6699170376 ("ethtool: fix application of verbose no_mask bitset") fixes
this issue by clearing the whole target bitmap before we start iterating.
The solution proposed brought an issue with the behavior of the mod
variable. As the bitset is always cleared the old value will always
differ to the new value.

Fix it by adding a new function to compare bitmaps and a temporary variable
which save the state of the old bitmap.

Fixes: 6699170376 ("ethtool: fix application of verbose no_mask bitset")
Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Link: https://patch.msgid.link/20241202153358.1142095-1-kory.maincent@bootlin.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2024-12-04 18:54:43 -08:00
..
bitset.c ethtool: Fix wrong mod state in case of verbose and no_mask bitset 2024-12-04 18:54:43 -08:00
bitset.h
cabletest.c net: ethtool: cable-test: Release RTNL when the PHY isn't found 2024-08-28 17:18:53 -07:00
channels.c ethtool: refactor checking max channels 2024-08-09 21:52:13 -07:00
cmis.h net: ethtool: Add support for writing firmware blocks using EPL payload 2024-10-13 18:02:50 +01:00
cmis_cdb.c net: ethtool: Add support for writing firmware blocks using EPL payload 2024-10-13 18:02:50 +01:00
cmis_fw_update.c net: ethtool: Add support for writing firmware blocks using EPL payload 2024-10-13 18:02:50 +01:00
coalesce.c
common.c net: ethtool: account for RSS+RXNFC add semantics when checking channel count 2024-11-14 19:53:42 -08:00
common.h ethtool: rss: prevent rss ctx deletion when in use 2024-10-17 10:22:01 +02:00
debug.c
eee.c
eeprom.c
features.c
fec.c
ioctl.c ethtool: Fix access to uninitialized fields in set RXNFC command 2024-12-03 18:42:28 -08:00
linkinfo.c Revert "net: ethtool: Avoid thousands of -Wflex-array-member-not-at-end warnings" 2024-11-18 18:52:11 -08:00
linkmodes.c Revert "net: ethtool: Avoid thousands of -Wflex-array-member-not-at-end warnings" 2024-11-18 18:52:11 -08:00
linkstate.c
Makefile net: ethtool: Introduce a command to list PHYs on an interface 2024-08-23 13:04:34 +01:00
mm.c
module.c
module_fw.h
netlink.c net: ethtool: Introduce a command to list PHYs on an interface 2024-08-23 13:04:34 +01:00
netlink.h net: ethtool: Introduce a command to list PHYs on an interface 2024-08-23 13:04:34 +01:00
pause.c
phc_vclocks.c
phy.c net: ethtool: phy: Don't set the context dev pointer for unfiltered DUMP 2024-09-13 21:40:12 -07:00
plca.c net: ethtool: plca: Target the command to the requested PHY 2024-08-23 13:04:34 +01:00
privflags.c
pse-pd.c ethtool: pse-pd: move pse validation into set 2024-08-30 12:14:57 -07:00
rings.c
rss.c genetlink: extend info user-storage to match NL cb ctx 2024-10-10 08:30:21 -07:00
stats.c
strset.c net: ethtool: strset: Allow querying phy stats by index 2024-08-23 13:04:35 +01:00
tsinfo.c
tunnels.c
wol.c