Message ID | 20240816114813.326645-2-razor@blackwall.org (mailing list archive) |
---|---|
State | Accepted |
Commit | fc59b9a5f7201b9f7272944596113a82cc7773d5 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | bonding: fix xfrm offload bugs | expand |
On Fri, Aug 16, 2024 at 02:48:10PM +0300, Nikolay Aleksandrov wrote: > Fix the return type which should be bool. > > Fixes: 955b785ec6b3 ("bonding: fix suspicious RCU usage in bond_ipsec_offload_ok()") > Signed-off-by: Nikolay Aleksandrov <razor@blackwall.org> > --- > drivers/net/bonding/bond_main.c | 18 ++++++------------ > 1 file changed, 6 insertions(+), 12 deletions(-) > > diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c > index 1cd92c12e782..85b5868deeea 100644 > --- a/drivers/net/bonding/bond_main.c > +++ b/drivers/net/bonding/bond_main.c > @@ -599,34 +599,28 @@ static bool bond_ipsec_offload_ok(struct sk_buff *skb, struct xfrm_state *xs) > struct net_device *real_dev; > struct slave *curr_active; > struct bonding *bond; > - int err; > + bool ok = false; > > bond = netdev_priv(bond_dev); > rcu_read_lock(); > curr_active = rcu_dereference(bond->curr_active_slave); > real_dev = curr_active->dev; > > - if (BOND_MODE(bond) != BOND_MODE_ACTIVEBACKUP) { > - err = false; > + if (BOND_MODE(bond) != BOND_MODE_ACTIVEBACKUP) > goto out; > - } > > - if (!xs->xso.real_dev) { > - err = false; > + if (!xs->xso.real_dev) > goto out; > - } > > if (!real_dev->xfrmdev_ops || > !real_dev->xfrmdev_ops->xdo_dev_offload_ok || > - netif_is_bond_master(real_dev)) { > - err = false; > + netif_is_bond_master(real_dev)) > goto out; > - } > > - err = real_dev->xfrmdev_ops->xdo_dev_offload_ok(skb, xs); > + ok = real_dev->xfrmdev_ops->xdo_dev_offload_ok(skb, xs); > out: > rcu_read_unlock(); > - return err; > + return ok; > } > > static const struct xfrmdev_ops bond_xfrmdev_ops = { > -- > 2.44.0 > Reviewed-by: Hangbin Liu <liuhangbin@gmail.com>
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 1cd92c12e782..85b5868deeea 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -599,34 +599,28 @@ static bool bond_ipsec_offload_ok(struct sk_buff *skb, struct xfrm_state *xs) struct net_device *real_dev; struct slave *curr_active; struct bonding *bond; - int err; + bool ok = false; bond = netdev_priv(bond_dev); rcu_read_lock(); curr_active = rcu_dereference(bond->curr_active_slave); real_dev = curr_active->dev; - if (BOND_MODE(bond) != BOND_MODE_ACTIVEBACKUP) { - err = false; + if (BOND_MODE(bond) != BOND_MODE_ACTIVEBACKUP) goto out; - } - if (!xs->xso.real_dev) { - err = false; + if (!xs->xso.real_dev) goto out; - } if (!real_dev->xfrmdev_ops || !real_dev->xfrmdev_ops->xdo_dev_offload_ok || - netif_is_bond_master(real_dev)) { - err = false; + netif_is_bond_master(real_dev)) goto out; - } - err = real_dev->xfrmdev_ops->xdo_dev_offload_ok(skb, xs); + ok = real_dev->xfrmdev_ops->xdo_dev_offload_ok(skb, xs); out: rcu_read_unlock(); - return err; + return ok; } static const struct xfrmdev_ops bond_xfrmdev_ops = {
Fix the return type which should be bool. Fixes: 955b785ec6b3 ("bonding: fix suspicious RCU usage in bond_ipsec_offload_ok()") Signed-off-by: Nikolay Aleksandrov <razor@blackwall.org> --- drivers/net/bonding/bond_main.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-)