On Thu, 2013-10-03 at 15:47 -0700, Alexei Starovoitov wrote: > on x86 system with net.core.bpf_jit_enable = 1 >
> --- a/net/core/filter.c > +++ b/net/core/filter.c > @@ -644,7 +644,9 @@ void sk_filter_release_rcu(struct rcu_head *rcu) > struct sk_filter *fp = container_of(rcu, struct sk_filter, rcu); > > bpf_jit_free(fp); > +#if !defined(CONFIG_X86_64) /* x86_64 has a deferred free */ > kfree(fp); > +#endif Sorry this is not very nice. Make bpf_jit_free(fp) a bool ? true : caller must free, false : caller must not free ? if (bpf_jit_free(fp)) kfree(fp); Or move the kfree() in bpf_jit_free() -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/