diff --git a/doc/changelog.txt b/doc/changelog.txt index 56623ba..3e7f103 100644 --- a/doc/changelog.txt +++ b/doc/changelog.txt @@ -8,6 +8,7 @@ HEAD - TEE: do not limit use to mangle table - TEE: do not retain iif and mark on cloned packet - TEE: new loop detection logic +- TEE: use less expensive pskb_copy Xtables-addons 1.24 (March 17 2010) diff --git a/extensions/xt_TEE.c b/extensions/xt_TEE.c index 8fe0d32..1bb6970 100644 --- a/extensions/xt_TEE.c +++ b/extensions/xt_TEE.c @@ -146,7 +146,7 @@ tee_tg4(struct sk_buff **pskb, const struct xt_target_param *par) * happened. The copy should be independently delivered to the TEE * --gateway. */ - skb = skb_copy(skb, GFP_ATOMIC); + skb = pskb_copy(skb, GFP_ATOMIC); if (skb == NULL) return XT_CONTINUE; /* @@ -243,7 +243,8 @@ tee_tg6(struct sk_buff **pskb, const struct xt_target_param *par) if (tee_active[cpu]) return XT_CONTINUE; - if ((skb = skb_copy(skb, GFP_ATOMIC)) == NULL) + skb = pskb_copy(skb, GFP_ATOMIC); + if (skb == NULL) return XT_CONTINUE; #ifdef WITH_CONNTRACK