All of lore.kernel.org
 help / color / mirror / Atom feed
* net/ethtool/mse.c:285 mse_fill_reply() warn: missing unwind goto?
@ 2026-02-09 15:26 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-02-09 15:26 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Oleksij Rempel <o.rempel@pengutronix.de>
CC: Jakub Kicinski <kuba@kernel.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   05f7e89ab9731565d8a62e3b5d1ec206485eeb0b
commit: e6e93fb01302e9b7a15d17f3b8a00eff8a601654 ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access
date:   3 months ago
:::::: branch date: 18 hours ago
:::::: commit date: 3 months ago
config: x86_64-randconfig-161-20260209 (https://download.01.org/0day-ci/archive/20260209/202602092315.jlgXdXWK-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
smatch version: v0.5.0-8994-gd50c5a4c

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202602092315.jlgXdXWK-lkp@intel.com/

smatch warnings:
net/ethtool/mse.c:285 mse_fill_reply() warn: missing unwind goto?

vim +285 net/ethtool/mse.c

e6e93fb01302e9 Oleksij Rempel 2025-10-27  233  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  234  static int mse_fill_reply(struct sk_buff *skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  235  			  const struct ethnl_req_info *req_base,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  236  			  const struct ethnl_reply_data *reply_base)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  237  {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  238  	const struct mse_reply_data *data = mse_repdata(reply_base);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  239  	struct nlattr *nest;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  240  	unsigned int i;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  241  	int ret;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  242  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  243  	nest = nla_nest_start(skb, ETHTOOL_A_MSE_CAPABILITIES);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  244  	if (!nest)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  245  		return -EMSGSIZE;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  246  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  247  	if (data->capability.supported_caps & PHY_MSE_CAP_AVG) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  248  		ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  249  				   ETHTOOL_A_MSE_CAPABILITIES_MAX_AVERAGE_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  250  				   data->capability.max_average_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  251  		if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  252  			goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  253  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  254  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  255  	if (data->capability.supported_caps & (PHY_MSE_CAP_PEAK |
e6e93fb01302e9 Oleksij Rempel 2025-10-27  256  					       PHY_MSE_CAP_WORST_PEAK)) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  257  		ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_MAX_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  258  				   data->capability.max_peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  259  		if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  260  			goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  261  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  262  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  263  	ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_REFRESH_RATE_PS,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  264  			   data->capability.refresh_rate_ps);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  265  	if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  266  		goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  267  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  268  	ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_NUM_SYMBOLS,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  269  			   data->capability.num_symbols);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  270  	if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  271  		goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  272  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  273  	nla_nest_end(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  274  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  275  	for (i = 0; i < data->num_snapshots; i++) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  276  		const struct mse_snapshot_entry *s = &data->snapshots[i];
e6e93fb01302e9 Oleksij Rempel 2025-10-27  277  		int chan_attr;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  278  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  279  		chan_attr = mse_channel_to_attr(s->channel);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  280  		if (chan_attr < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  281  			return chan_attr;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  282  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  283  		nest = nla_nest_start(skb, chan_attr);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  284  		if (!nest)
e6e93fb01302e9 Oleksij Rempel 2025-10-27 @285  			return -EMSGSIZE;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  286  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  287  		if (data->capability.supported_caps & PHY_MSE_CAP_AVG) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  288  			ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  289  					   ETHTOOL_A_MSE_SNAPSHOT_AVERAGE_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  290  					   s->snapshot.average_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  291  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  292  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  293  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  294  		if (data->capability.supported_caps & PHY_MSE_CAP_PEAK) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  295  			ret = nla_put_uint(skb, ETHTOOL_A_MSE_SNAPSHOT_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  296  					   s->snapshot.peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  297  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  298  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  299  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  300  		if (data->capability.supported_caps & PHY_MSE_CAP_WORST_PEAK) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  301  			ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  302  					   ETHTOOL_A_MSE_SNAPSHOT_WORST_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  303  					   s->snapshot.worst_peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  304  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  305  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  306  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  307  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  308  		nla_nest_end(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  309  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  310  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  311  	return 0;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  312  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  313  nla_put_nest_failure:
e6e93fb01302e9 Oleksij Rempel 2025-10-27  314  	nla_nest_cancel(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  315  	return ret;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  316  }
e6e93fb01302e9 Oleksij Rempel 2025-10-27  317  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

* net/ethtool/mse.c:285 mse_fill_reply() warn: missing unwind goto?
@ 2026-05-24  8:26 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-05-24  8:26 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Oleksij Rempel <o.rempel@pengutronix.de>
CC: Jakub Kicinski <kuba@kernel.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4cbfe4502e3d4bda48eb4b83dfad8d7da3b22e90
commit: e6e93fb01302e9b7a15d17f3b8a00eff8a601654 ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access
date:   7 months ago
:::::: branch date: 8 hours ago
:::::: commit date: 7 months ago
config: x86_64-randconfig-161-20260523 (https://download.01.org/0day-ci/archive/20260524/202605241642.RFiYcaVG-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
smatch: v0.5.0-9185-gbcc58b9c

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Fixes: e6e93fb01302 ("ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access")
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202605241642.RFiYcaVG-lkp@intel.com/

smatch warnings:
net/ethtool/mse.c:285 mse_fill_reply() warn: missing unwind goto?

vim +285 net/ethtool/mse.c

e6e93fb01302e9 Oleksij Rempel 2025-10-27  233  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  234  static int mse_fill_reply(struct sk_buff *skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  235  			  const struct ethnl_req_info *req_base,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  236  			  const struct ethnl_reply_data *reply_base)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  237  {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  238  	const struct mse_reply_data *data = mse_repdata(reply_base);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  239  	struct nlattr *nest;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  240  	unsigned int i;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  241  	int ret;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  242  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  243  	nest = nla_nest_start(skb, ETHTOOL_A_MSE_CAPABILITIES);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  244  	if (!nest)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  245  		return -EMSGSIZE;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  246  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  247  	if (data->capability.supported_caps & PHY_MSE_CAP_AVG) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  248  		ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  249  				   ETHTOOL_A_MSE_CAPABILITIES_MAX_AVERAGE_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  250  				   data->capability.max_average_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  251  		if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  252  			goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  253  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  254  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  255  	if (data->capability.supported_caps & (PHY_MSE_CAP_PEAK |
e6e93fb01302e9 Oleksij Rempel 2025-10-27  256  					       PHY_MSE_CAP_WORST_PEAK)) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  257  		ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_MAX_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  258  				   data->capability.max_peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  259  		if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  260  			goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  261  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  262  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  263  	ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_REFRESH_RATE_PS,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  264  			   data->capability.refresh_rate_ps);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  265  	if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  266  		goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  267  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  268  	ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_NUM_SYMBOLS,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  269  			   data->capability.num_symbols);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  270  	if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  271  		goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  272  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  273  	nla_nest_end(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  274  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  275  	for (i = 0; i < data->num_snapshots; i++) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  276  		const struct mse_snapshot_entry *s = &data->snapshots[i];
e6e93fb01302e9 Oleksij Rempel 2025-10-27  277  		int chan_attr;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  278  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  279  		chan_attr = mse_channel_to_attr(s->channel);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  280  		if (chan_attr < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  281  			return chan_attr;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  282  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  283  		nest = nla_nest_start(skb, chan_attr);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  284  		if (!nest)
e6e93fb01302e9 Oleksij Rempel 2025-10-27 @285  			return -EMSGSIZE;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  286  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  287  		if (data->capability.supported_caps & PHY_MSE_CAP_AVG) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  288  			ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  289  					   ETHTOOL_A_MSE_SNAPSHOT_AVERAGE_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  290  					   s->snapshot.average_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  291  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  292  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  293  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  294  		if (data->capability.supported_caps & PHY_MSE_CAP_PEAK) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  295  			ret = nla_put_uint(skb, ETHTOOL_A_MSE_SNAPSHOT_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  296  					   s->snapshot.peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  297  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  298  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  299  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  300  		if (data->capability.supported_caps & PHY_MSE_CAP_WORST_PEAK) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  301  			ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  302  					   ETHTOOL_A_MSE_SNAPSHOT_WORST_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  303  					   s->snapshot.worst_peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  304  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  305  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  306  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  307  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  308  		nla_nest_end(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  309  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  310  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  311  	return 0;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  312  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  313  nla_put_nest_failure:
e6e93fb01302e9 Oleksij Rempel 2025-10-27  314  	nla_nest_cancel(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  315  	return ret;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  316  }
e6e93fb01302e9 Oleksij Rempel 2025-10-27  317  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

* net/ethtool/mse.c:285 mse_fill_reply() warn: missing unwind goto?
@ 2026-05-25  7:04 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2026-05-25  7:04 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Oleksij Rempel <o.rempel@pengutronix.de>
CC: Jakub Kicinski <kuba@kernel.org>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   e7ae89a0c97ce2b68b0983cd01eda67cf373517d
commit: e6e93fb01302e9b7a15d17f3b8a00eff8a601654 ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access
date:   7 months ago
:::::: branch date: 10 hours ago
:::::: commit date: 7 months ago
config: x86_64-randconfig-161-20260523 (https://download.01.org/0day-ci/archive/20260525/202605251513.JZ0L7xDS-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
smatch: v0.5.0-9185-gbcc58b9c

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Fixes: e6e93fb01302 ("ethtool: netlink: add ETHTOOL_MSG_MSE_GET and wire up PHY MSE access")
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202605251513.JZ0L7xDS-lkp@intel.com/

smatch warnings:
net/ethtool/mse.c:285 mse_fill_reply() warn: missing unwind goto?

vim +285 net/ethtool/mse.c

e6e93fb01302e9 Oleksij Rempel 2025-10-27  233  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  234  static int mse_fill_reply(struct sk_buff *skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  235  			  const struct ethnl_req_info *req_base,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  236  			  const struct ethnl_reply_data *reply_base)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  237  {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  238  	const struct mse_reply_data *data = mse_repdata(reply_base);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  239  	struct nlattr *nest;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  240  	unsigned int i;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  241  	int ret;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  242  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  243  	nest = nla_nest_start(skb, ETHTOOL_A_MSE_CAPABILITIES);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  244  	if (!nest)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  245  		return -EMSGSIZE;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  246  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  247  	if (data->capability.supported_caps & PHY_MSE_CAP_AVG) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  248  		ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  249  				   ETHTOOL_A_MSE_CAPABILITIES_MAX_AVERAGE_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  250  				   data->capability.max_average_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  251  		if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  252  			goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  253  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  254  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  255  	if (data->capability.supported_caps & (PHY_MSE_CAP_PEAK |
e6e93fb01302e9 Oleksij Rempel 2025-10-27  256  					       PHY_MSE_CAP_WORST_PEAK)) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  257  		ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_MAX_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  258  				   data->capability.max_peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  259  		if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  260  			goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  261  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  262  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  263  	ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_REFRESH_RATE_PS,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  264  			   data->capability.refresh_rate_ps);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  265  	if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  266  		goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  267  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  268  	ret = nla_put_uint(skb, ETHTOOL_A_MSE_CAPABILITIES_NUM_SYMBOLS,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  269  			   data->capability.num_symbols);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  270  	if (ret < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  271  		goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  272  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  273  	nla_nest_end(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  274  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  275  	for (i = 0; i < data->num_snapshots; i++) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  276  		const struct mse_snapshot_entry *s = &data->snapshots[i];
e6e93fb01302e9 Oleksij Rempel 2025-10-27  277  		int chan_attr;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  278  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  279  		chan_attr = mse_channel_to_attr(s->channel);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  280  		if (chan_attr < 0)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  281  			return chan_attr;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  282  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  283  		nest = nla_nest_start(skb, chan_attr);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  284  		if (!nest)
e6e93fb01302e9 Oleksij Rempel 2025-10-27 @285  			return -EMSGSIZE;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  286  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  287  		if (data->capability.supported_caps & PHY_MSE_CAP_AVG) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  288  			ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  289  					   ETHTOOL_A_MSE_SNAPSHOT_AVERAGE_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  290  					   s->snapshot.average_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  291  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  292  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  293  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  294  		if (data->capability.supported_caps & PHY_MSE_CAP_PEAK) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  295  			ret = nla_put_uint(skb, ETHTOOL_A_MSE_SNAPSHOT_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  296  					   s->snapshot.peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  297  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  298  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  299  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  300  		if (data->capability.supported_caps & PHY_MSE_CAP_WORST_PEAK) {
e6e93fb01302e9 Oleksij Rempel 2025-10-27  301  			ret = nla_put_uint(skb,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  302  					   ETHTOOL_A_MSE_SNAPSHOT_WORST_PEAK_MSE,
e6e93fb01302e9 Oleksij Rempel 2025-10-27  303  					   s->snapshot.worst_peak_mse);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  304  			if (ret)
e6e93fb01302e9 Oleksij Rempel 2025-10-27  305  				goto nla_put_nest_failure;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  306  		}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  307  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  308  		nla_nest_end(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  309  	}
e6e93fb01302e9 Oleksij Rempel 2025-10-27  310  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  311  	return 0;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  312  
e6e93fb01302e9 Oleksij Rempel 2025-10-27  313  nla_put_nest_failure:
e6e93fb01302e9 Oleksij Rempel 2025-10-27  314  	nla_nest_cancel(skb, nest);
e6e93fb01302e9 Oleksij Rempel 2025-10-27  315  	return ret;
e6e93fb01302e9 Oleksij Rempel 2025-10-27  316  }
e6e93fb01302e9 Oleksij Rempel 2025-10-27  317  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-05-25  7:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-24  8:26 net/ethtool/mse.c:285 mse_fill_reply() warn: missing unwind goto? kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2026-05-25  7:04 kernel test robot
2026-02-09 15:26 kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.