On Thu, Oct 3, 2013 at 4:02 PM, Eric Dumazet <erdnet...@gmail.com> wrote: > 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()
I think it's cleaner too, just didn't want to touch all architectures. Will do then. -- 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/