lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 16 Mar 2021 12:10:00 +0300
From:   Dan Carpenter <dan.carpenter@...cle.com>
To:     "'w00385741" <weiyongjun1@...wei.com>
Cc:     Vladimir Oltean <olteanv@...il.com>, Andrew Lunn <andrew@...n.ch>,
        Vivien Didelot <vivien.didelot@...il.com>,
        Florian Fainelli <f.fainelli@...il.com>,
        Jakub Kicinski <kuba@...nel.org>,
        Baowen Zheng <baowen.zheng@...igine.com>,
        netdev@...r.kernel.org, kernel-janitors@...r.kernel.org,
        Hulk Robot <hulkci@...wei.com>
Subject: Re: [PATCH net-next] net: dsa: sja1105: fix error return code in
 sja1105_cls_flower_add()

On Mon, Mar 15, 2021 at 02:43:23PM +0000, 'w00385741 wrote:
> From: Wei Yongjun <weiyongjun1@...wei.com>
> 
> The return value 'rc' maybe overwrite to 0 in the flow_action_for_each
> loop, the error code from the offload not support error handling will
> not set. This commit fix it to return -EOPNOTSUPP.
> 
> Fixes: 6a56e19902af ("flow_offload: reject configuration of packet-per-second policing in offload drivers")
> Reported-by: Hulk Robot <hulkci@...wei.com>
> Signed-off-by: Wei Yongjun <weiyongjun1@...wei.com>
> ---
>  drivers/net/dsa/sja1105/sja1105_flower.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/net/dsa/sja1105/sja1105_flower.c b/drivers/net/dsa/sja1105/sja1105_flower.c
> index f78b767f86ee..973761132fc3 100644
> --- a/drivers/net/dsa/sja1105/sja1105_flower.c
> +++ b/drivers/net/dsa/sja1105/sja1105_flower.c
> @@ -317,14 +317,13 @@ int sja1105_cls_flower_add(struct dsa_switch *ds, int port,
>  	if (rc)
>  		return rc;
>  
> -	rc = -EOPNOTSUPP;
> -
>  	flow_action_for_each(i, act, &rule->action) {
>  		switch (act->id) {
>  		case FLOW_ACTION_POLICE:
>  			if (act->police.rate_pkt_ps) {
>  				NL_SET_ERR_MSG_MOD(extack,
>  						   "QoS offload not support packets per second");
> +				rc = -EOPNOTSUPP;
>  				goto out;

Yep.  The goto out is a do nothing goto and "forgot the error code" is
the traditional bug introduced by do nothing gotos.

Reviewed-by: Dan Carpenter <dan.carpenter@...cle.com>

regards,
dan carpenter

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ