Message ID | 20210406131730.25404-1-vee.khee.wong@linux.intel.com |
---|---|
State | Accepted |
Commit | 63cf32389925e234d166fb1a336b46de7f846003 |
Headers | show |
Series | [net,v1,1/1] ethtool: fix incorrect datatype in set_eee ops | expand |
On Tue, 6 Apr 2021 21:17:30 +0800 Wong Vee Khee wrote: > The member 'tx_lpi_timer' is defined with __u32 datatype in the ethtool > header file. Hence, we should use ethnl_update_u32() in set_eee ops. > > Fixes: fd77be7bd43c ("ethtool: set EEE settings with EEE_SET request") > Cc: <stable@vger.kernel.org> # 5.10.x > Cc: Michal Kubecek <mkubecek@suse.cz> > Signed-off-by: Wong Vee Khee <vee.khee.wong@linux.intel.com> Reviewed-by: Jakub Kicinski <kuba@kernel.org>
On Tue, Apr 06, 2021 at 09:17:30PM +0800, Wong Vee Khee wrote: > The member 'tx_lpi_timer' is defined with __u32 datatype in the ethtool > header file. Hence, we should use ethnl_update_u32() in set_eee ops. To be precise, the correct reason is that unlike .eee_enabled and .tx_lpi_enabled, .tx_lpi_timer value is interpreted as a number, not a logical value (those two are also __u32). But I don't think it's necessary to resubmit. Reviewed-by: Michal Kubecek <mkubecek@suse.cz> > Fixes: fd77be7bd43c ("ethtool: set EEE settings with EEE_SET request") > Cc: <stable@vger.kernel.org> # 5.10.x > Cc: Michal Kubecek <mkubecek@suse.cz> > Signed-off-by: Wong Vee Khee <vee.khee.wong@linux.intel.com> > --- > net/ethtool/eee.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/net/ethtool/eee.c b/net/ethtool/eee.c > index 901b7de941ab..e10bfcc07853 100644 > --- a/net/ethtool/eee.c > +++ b/net/ethtool/eee.c > @@ -169,8 +169,8 @@ int ethnl_set_eee(struct sk_buff *skb, struct genl_info *info) > ethnl_update_bool32(&eee.eee_enabled, tb[ETHTOOL_A_EEE_ENABLED], &mod); > ethnl_update_bool32(&eee.tx_lpi_enabled, > tb[ETHTOOL_A_EEE_TX_LPI_ENABLED], &mod); > - ethnl_update_bool32(&eee.tx_lpi_timer, tb[ETHTOOL_A_EEE_TX_LPI_TIMER], > - &mod); > + ethnl_update_u32(&eee.tx_lpi_timer, tb[ETHTOOL_A_EEE_TX_LPI_TIMER], > + &mod); > ret = 0; > if (!mod) > goto out_ops; > -- > 2.25.1 >
diff --git a/net/ethtool/eee.c b/net/ethtool/eee.c index 901b7de941ab..e10bfcc07853 100644 --- a/net/ethtool/eee.c +++ b/net/ethtool/eee.c @@ -169,8 +169,8 @@ int ethnl_set_eee(struct sk_buff *skb, struct genl_info *info) ethnl_update_bool32(&eee.eee_enabled, tb[ETHTOOL_A_EEE_ENABLED], &mod); ethnl_update_bool32(&eee.tx_lpi_enabled, tb[ETHTOOL_A_EEE_TX_LPI_ENABLED], &mod); - ethnl_update_bool32(&eee.tx_lpi_timer, tb[ETHTOOL_A_EEE_TX_LPI_TIMER], - &mod); + ethnl_update_u32(&eee.tx_lpi_timer, tb[ETHTOOL_A_EEE_TX_LPI_TIMER], + &mod); ret = 0; if (!mod) goto out_ops;
The member 'tx_lpi_timer' is defined with __u32 datatype in the ethtool header file. Hence, we should use ethnl_update_u32() in set_eee ops. Fixes: fd77be7bd43c ("ethtool: set EEE settings with EEE_SET request") Cc: <stable@vger.kernel.org> # 5.10.x Cc: Michal Kubecek <mkubecek@suse.cz> Signed-off-by: Wong Vee Khee <vee.khee.wong@linux.intel.com> --- net/ethtool/eee.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)