bonding: fix bond_ipsec_offload_ok return type

[ Upstream commit fc59b9a5f7201b9f7272944596113a82cc7773d5 ]

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>
Reviewed-by: Hangbin Liu <liuhangbin@gmail.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Nikolay Aleksandrov 2024-08-16 14:48:10 +03:00 committed by Ksawlii
parent dba9b999e6
commit 38a3a70b3e

View file

@ -557,34 +557,28 @@ static bool bond_ipsec_offload_ok(struct sk_buff *skb, struct xfrm_state *xs)
struct net_device *real_dev; struct net_device *real_dev;
struct slave *curr_active; struct slave *curr_active;
struct bonding *bond; struct bonding *bond;
int err; bool ok = false;
bond = netdev_priv(bond_dev); bond = netdev_priv(bond_dev);
rcu_read_lock(); rcu_read_lock();
curr_active = rcu_dereference(bond->curr_active_slave); curr_active = rcu_dereference(bond->curr_active_slave);
real_dev = curr_active->dev; real_dev = curr_active->dev;
if (BOND_MODE(bond) != BOND_MODE_ACTIVEBACKUP) { if (BOND_MODE(bond) != BOND_MODE_ACTIVEBACKUP)
err = false;
goto out; goto out;
}
if (!xs->xso.real_dev) { if (!xs->xso.real_dev)
err = false;
goto out; goto out;
}
if (!real_dev->xfrmdev_ops || if (!real_dev->xfrmdev_ops ||
!real_dev->xfrmdev_ops->xdo_dev_offload_ok || !real_dev->xfrmdev_ops->xdo_dev_offload_ok ||
netif_is_bond_master(real_dev)) { netif_is_bond_master(real_dev))
err = false;
goto out; 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: out:
rcu_read_unlock(); rcu_read_unlock();
return err; return ok;
} }
static const struct xfrmdev_ops bond_xfrmdev_ops = { static const struct xfrmdev_ops bond_xfrmdev_ops = {