Re: [PATCH net] net: bridge: vlan: fix error return code in __vlan_add()

From: Nikolay Aleksandrov
Date: Fri Dec 04 2020 - 05:48:06 EST


On 04/12/2020 10:48, Zhang Changzhong wrote:
> Fix to return a negative error code from the error handling
> case instead of 0, as done elsewhere in this function.
>
> Fixes: f8ed289fab84 ("bridge: vlan: use br_vlan_(get|put)_master to deal with refcounts")
> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> Signed-off-by: Zhang Changzhong <zhangchangzhong@xxxxxxxxxx>
> ---
> net/bridge/br_vlan.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/net/bridge/br_vlan.c b/net/bridge/br_vlan.c
> index 3e493eb..08c7741 100644
> --- a/net/bridge/br_vlan.c
> +++ b/net/bridge/br_vlan.c
> @@ -266,8 +266,10 @@ static int __vlan_add(struct net_bridge_vlan *v, u16 flags,
> }
>
> masterv = br_vlan_get_master(br, v->vid, extack);
> - if (!masterv)
> + if (!masterv) {
> + err = -ENOMEM;
> goto out_filt;
> + }
> v->brvlan = masterv;
> if (br_opt_get(br, BROPT_VLAN_STATS_PER_PORT)) {
> v->stats = netdev_alloc_pcpu_stats(struct br_vlan_stats);
>

Acked-by: Nikolay Aleksandrov <nikolay@xxxxxxxxxx>