Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 64c31b3f authored by WANG Cong's avatar WANG Cong Committed by David S. Miller
Browse files

[XFRM] xfrm_policy_destroy: Rename and relative fixes.



Since __xfrm_policy_destroy is used to destory the resources
allocated by xfrm_policy_alloc. So using the name
__xfrm_policy_destroy is not correspond with xfrm_policy_alloc.
Rename it to xfrm_policy_destroy.

And along with some instances that call xfrm_policy_alloc
but not using xfrm_policy_destroy to destroy the resource,
fix them.

Signed-off-by: default avatarWANG Cong <xiyou.wangcong@gmail.com>
Acked-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d66e37a9
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -626,12 +626,12 @@ static inline void xfrm_pol_hold(struct xfrm_policy *policy)
		atomic_inc(&policy->refcnt);
}

extern void __xfrm_policy_destroy(struct xfrm_policy *policy);
extern void xfrm_policy_destroy(struct xfrm_policy *policy);

static inline void xfrm_pol_put(struct xfrm_policy *policy)
{
	if (atomic_dec_and_test(&policy->refcnt))
		__xfrm_policy_destroy(policy);
		xfrm_policy_destroy(policy);
}

#ifdef CONFIG_XFRM_SUB_POLICY
+2 −4
Original line number Diff line number Diff line
@@ -2291,8 +2291,7 @@ static int pfkey_spdadd(struct sock *sk, struct sk_buff *skb, struct sadb_msg *h
	return 0;

out:
	security_xfrm_policy_free(xp);
	kfree(xp);
	xfrm_policy_destroy(xp);
	return err;
}

@@ -3236,8 +3235,7 @@ static struct xfrm_policy *pfkey_compile_policy(struct sock *sk, int opt,
	return xp;

out:
	security_xfrm_policy_free(xp);
	kfree(xp);
	xfrm_policy_destroy(xp);
	return NULL;
}

+2 −2
Original line number Diff line number Diff line
@@ -221,7 +221,7 @@ EXPORT_SYMBOL(xfrm_policy_alloc);

/* Destroy xfrm_policy: descendant resources must be released to this moment. */

void __xfrm_policy_destroy(struct xfrm_policy *policy)
void xfrm_policy_destroy(struct xfrm_policy *policy)
{
	BUG_ON(!policy->dead);

@@ -233,7 +233,7 @@ void __xfrm_policy_destroy(struct xfrm_policy *policy)
	security_xfrm_policy_free(policy);
	kfree(policy);
}
EXPORT_SYMBOL(__xfrm_policy_destroy);
EXPORT_SYMBOL(xfrm_policy_destroy);

static void xfrm_policy_gc_kill(struct xfrm_policy *policy)
{
+1 −1
Original line number Diff line number Diff line
@@ -1043,7 +1043,7 @@ static struct xfrm_policy *xfrm_policy_construct(struct xfrm_userpolicy_info *p,
	return xp;
 error:
	*errp = err;
	kfree(xp);
	xfrm_policy_destroy(xp);
	return NULL;
}