On Tue, 2012-03-13 at 11:04 +0100, Indan Zupancic wrote: > Hello, > > I made a quick pseudo-patch for BPF JIT support. As far as I can tell, > the actual code itself is very simple, just: > > - bpf_jit_compile(fp); > + jit = bpf_jit_compile(fp->insns, fp->len, 1); > + if (jit) { > + fp->bpf_func = jit; > + /* Free unused insns memory */ > + newfp = krealloc(fp, sizeof(*fp), GFP_KERNEL); > + if (newfp) > + fp = newfp; > + } > > old_fp = rcu_dereference_protected(sk->sk_filter, > sock_owned_by_user(sk)); Dont mix unrelated changes in a single patch. Current krealloc() doesnt alloc a new area if the current one is bigger than 'new_size', but this might change in next kernel versions. So this part of your patch does nothing. If it did, this kind of 'optimization' can actually be not good, because sizeof(*fp) is small enough (less than half cache line size) to trigger a possible false sharing issue. (other part of the cache line could be used to hold a often dirtied object) -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html