Re: [PATCH 5.11 13/31] net: bonding: fix error return code of bond_neigh_init()

From: Jiri Kosina
Date: Fri Mar 19 2021 - 11:15:14 EST


On Fri, 19 Mar 2021, Greg Kroah-Hartman wrote:

> > > diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c
> > > index 5fe5232cc3f3..fba6b6d1b430 100644
> > > --- a/drivers/net/bonding/bond_main.c
> > > +++ b/drivers/net/bonding/bond_main.c
> > > @@ -3917,11 +3917,15 @@ static int bond_neigh_init(struct neighbour *n)
> > >
> > > rcu_read_lock();
> > > slave = bond_first_slave_rcu(bond);
> > > - if (!slave)
> > > + if (!slave) {
> > > + ret = -EINVAL;
> > > goto out;
> > > + }
> > > slave_ops = slave->dev->netdev_ops;
> > > - if (!slave_ops->ndo_neigh_setup)
> > > + if (!slave_ops->ndo_neigh_setup) {
> > > + ret = -EINVAL;
> > > goto out;
> > > + }
> >
> > This patch is completely broken and breaks bonding functionality
> > altogether for me.
>
> Is Linus's tree also broken for you? This showed up in 5.12-rc3.

Yes, it is.

--
Jiri Kosina
SUSE Labs