On 8/27/19 1:42 PM, Shmulik Ladkani wrote:
[...]
- Another thing that puzzles me is that we hit the BUG_ON rather rarely
and cannot yet reproduce synthetically. If skb_segment's handling of
skbs with a frag_list (that have gso_size mangled) is broken, I'd expect
to hit this more often... Any ideas?
- Suppose going for a rewrite, care to elaborate what's exactly missing
in skb_segment's logic?
I must admit I do not fully understand all the different code flows in
this function, it seems to support many different input skbs - any
assistance is highly appreciated.
Given first point above wrt hitting rarely, it would be good to first get a
better understanding for writing a reproducer. Back then Yonghong added one
to the BPF kernel test suite [0], so it would be desirable to extend it for
the case you're hitting. Given NAT64 use-case is needed and used by multiple
parties, we should try to (fully) fix it generically.
Thanks,
Daniel
[0]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=76db8087c4c991dcd17f5ea8ac0eafd0696ab450
Shmulik