linux/net/ethtool
Kory Maincent 524515020f Revert "ethtool: Fix mod state of verbose no_mask bitset"
This reverts commit 108a36d07c.

It was reported that this fix breaks the possibility to remove existing WoL
flags. For example:
~$ ethtool lan2
...
        Supports Wake-on: pg
        Wake-on: d
...
~$ ethtool -s lan2 wol gp
~$ ethtool lan2
...
        Wake-on: pg
...
~$ ethtool -s lan2 wol d
~$ ethtool lan2
...
        Wake-on: pg
...

This worked correctly before this commit because we were always updating
a zero bitmap (since commit 6699170376 ("ethtool: fix application of
verbose no_mask bitset"), that is) so that the rest was left zero
naturally. But now the 1->0 change (old_val is true, bit not present in
netlink nest) no longer works.

Reported-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reported-by: Michal Kubecek <mkubecek@suse.cz>
Closes: https://lore.kernel.org/netdev/20231019095140.l6fffnszraeb6iiw@lion.mk-sys.cz/
Cc: stable@vger.kernel.org
Fixes: 108a36d07c ("ethtool: Fix mod state of verbose no_mask bitset")
Signed-off-by: Kory Maincent <kory.maincent@bootlin.com>
Reviewed-by: Michal Kubecek <mkubecek@suse.cz>
Link: https://lore.kernel.org/r/20231019-feature_ptp_bitset_fix-v1-1-70f3c429a221@bootlin.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2023-10-19 09:27:12 -07:00
..
bitset.c Revert "ethtool: Fix mod state of verbose no_mask bitset" 2023-10-19 09:27:12 -07:00
bitset.h ethtool: add ethnl_parse_bitset() helper 2020-03-12 15:32:32 -07:00
cabletest.c net: delete extra space and tab in blank line 2022-07-25 19:38:31 -07:00
channels.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
coalesce.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
common.c net: transfer rtnl_lock() requirement from ethtool_set_ethtool_phy_ops() to caller 2023-08-02 19:11:06 -07:00
common.h net: ethtool: netlink: retrieve stats from multiple sources (eMAC, pMAC) 2023-01-23 12:44:18 +00:00
debug.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
eee.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
eeprom.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
features.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
fec.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
ioctl.c net: flow_dissector: Use 64bits for used_keys 2023-07-31 09:11:24 +01:00
linkinfo.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
linkmodes.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
linkstate.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
Makefile net: ethtool: add support for MAC Merge layer 2023-01-23 12:44:18 +00:00
mm.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
module.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
netlink.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
netlink.h ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
pause.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
phc_vclocks.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
plca.c ethtool: plca: fix plca enable data type while parsing the value 2023-10-03 07:18:58 -07:00
privflags.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
pse-pd.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
rings.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
rss.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
stats.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
strset.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
tsinfo.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00
tunnels.c genetlink: use attrs from struct genl_info 2023-08-15 15:00:45 -07:00
wol.c ethtool: netlink: always pass genl_info to .prepare_data 2023-08-15 15:01:03 -07:00