xfrm: provide common xdo_dev_offload_ok callback implementation
Almost all drivers except bond and nsim had same check if device can perform XFRM offload on that specific packet. The check was that packet doesn't have IPv4 options and IPv6 extensions. In NIC drivers, the IPv4 HELEN comparison was slightly different, but the intent was to check for the same conditions. So let's chose more strict variant as a common base. Reviewed-by: Zhu Yanjun <yanjun.zhu@linux.dev> Signed-off-by: Leon Romanovsky <leonro@nvidia.com> Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
This commit is contained in:
committed by
Steffen Klassert
parent
49431af6c4
commit
cc18f482e8
@@ -217,20 +217,9 @@ static void nsim_ipsec_del_sa(struct xfrm_state *xs)
|
||||
ipsec->count--;
|
||||
}
|
||||
|
||||
static bool nsim_ipsec_offload_ok(struct sk_buff *skb, struct xfrm_state *xs)
|
||||
{
|
||||
struct netdevsim *ns = netdev_priv(xs->xso.real_dev);
|
||||
struct nsim_ipsec *ipsec = &ns->ipsec;
|
||||
|
||||
ipsec->ok++;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static const struct xfrmdev_ops nsim_xfrmdev_ops = {
|
||||
.xdo_dev_state_add = nsim_ipsec_add_sa,
|
||||
.xdo_dev_state_delete = nsim_ipsec_del_sa,
|
||||
.xdo_dev_offload_ok = nsim_ipsec_offload_ok,
|
||||
};
|
||||
|
||||
bool nsim_ipsec_tx(struct netdevsim *ns, struct sk_buff *skb)
|
||||
|
||||
@@ -54,7 +54,6 @@ struct nsim_ipsec {
|
||||
struct dentry *pfile;
|
||||
u32 count;
|
||||
u32 tx;
|
||||
u32 ok;
|
||||
};
|
||||
|
||||
#define NSIM_MACSEC_MAX_SECY_COUNT 3
|
||||
|
||||
Reference in New Issue
Block a user