ethtool: plca: fix plca enable data type while parsing the value
authorParthiban Veerasooran <Parthiban.Veerasooran@microchip.com>
Fri, 8 Sep 2023 04:45:48 +0000 (10:15 +0530)
committerJakub Kicinski <kuba@kernel.org>
Tue, 3 Oct 2023 14:18:58 +0000 (07:18 -0700)
commit8957261cd8149ed9d0738c01c0320bcbff989407
tree853655b39c8072cb355686d217d73d3e9cc9afa0
parenteea03d18af9c44235865a4bc9bec4d780ef6cf21
ethtool: plca: fix plca enable data type while parsing the value

The ETHTOOL_A_PLCA_ENABLED data type is u8. But while parsing the
value from the attribute, nla_get_u32() is used in the plca_update_sint()
function instead of nla_get_u8(). So plca_cfg.enabled variable is updated
with some garbage value instead of 0 or 1 and always enables plca even
though plca is disabled through ethtool application. This bug has been
fixed by parsing the values based on the attributes type in the policy.

Fixes: 8580e16c28f3 ("net/ethtool: add netlink interface for the PLCA RS")
Signed-off-by: Parthiban Veerasooran <Parthiban.Veerasooran@microchip.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Link: https://lore.kernel.org/r/20230908044548.5878-1-Parthiban.Veerasooran@microchip.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ethtool/plca.c