On Thu, Feb 14, 2019 at 5:00 PM Dominique Martinet <asmad...@codewreck.org> wrote: > > Dominique Martinet wrote on Wed, Oct 31, 2018: > > Anyway, that probably explains I have no problem with bigger VM > > (uselessly more memory available) or without KASAN (I guess there's > > overhead?), but I'm sending at most 300k of data and the VM has a 1.5GB > > of ram, so if there's an allocation failure there I think there's a > > problem ! . . . > > > > So, well, I'm not sure on the way forward. Adding a bpf helper and > > document that kcm users should mind the offset? > > bump on this - I had mostly forgotten about it but the nfs-ganesha > community that could make use of KCM reminded me of my patch that's > waiting for this. > > Summary for people coming back after four months: > - kcm is great, but the bpf function that's supposed to be called for > each packet does not automatically adjust the offset so that it can > assume the skb starts with the packet it needs to look at > > - there is some workaround code that is far from obvious and > undocumented, see the original thread[1]: > [1] > http://lkml.kernel.org/r/20180822183852.jnwlxnz54gbbf...@davejwatson-mba.dhcp.thefacebook.com > > - my patch here tried to automatically pull the corresponding packet to > the front, but apparently with KASAN can trigger out of memory > behaviours on "small" VMs, so even if it doesn't seem to impact > performance much without KASAN I don't think it's really ok to > potentially hang the connection due to oom under severe conditions. > > > The best alternative I see is adding a proper helper to get > "kcm_rx_msg(skb)->offset" from bpf and document it so users aren't as > lost as I have been; I'm not quite sure how/where to add such a helper > though as I've barely looked at the bpf code until now, but should we go > for that?
Dominique, Thanks for looking into this. I'd rather not complicate the bpf code for this. Can we just always do an pskb_pull after skb_clone? Tom > > > (it really feels wrong to me that some random person who just started by > trying to use kcm has to put this much effort to keep the ball rolling, > if nobody cares about kcm I'm also open to have it removed completely > despite the obvious performance gain I benchmarked for ganesha[2] ; > barely maintained feature is worse than no feature) > > [2] https://review.gerrithub.io/c/ffilz/nfs-ganesha/+/421314 > > Thanks, > -- > Dominique