]> err.no Git - linux-2.6/blobdiff - net/ipv6/ipcomp6.c
ftrace: Documentation
[linux-2.6] / net / ipv6 / ipcomp6.c
index b90039593a7f0873c0d8af1b7c67144a2a34f531..ee6de425ce6b8c28873c8fdd0148b19c584f6d7f 100644 (file)
@@ -34,7 +34,6 @@
 #include <net/ip.h>
 #include <net/xfrm.h>
 #include <net/ipcomp.h>
-#include <asm/semaphore.h>
 #include <linux/crypto.h>
 #include <linux/err.h>
 #include <linux/pfkeyv2.h>
@@ -146,7 +145,9 @@ static int ipcomp6_output(struct xfrm_state *x, struct sk_buff *skb)
        scratch = *per_cpu_ptr(ipcomp6_scratches, cpu);
        tfm = *per_cpu_ptr(ipcd->tfms, cpu);
 
+       local_bh_disable();
        err = crypto_comp_compress(tfm, start, plen, scratch, &dlen);
+       local_bh_enable();
        if (err || (dlen + sizeof(*ipch)) >= plen) {
                put_cpu();
                goto out_ok;