On Tue, Oct 4, 2016 at 2:28 AM, Jiri Benc <jb...@redhat.com> wrote: > On Tue, 4 Oct 2016 10:24:58 +0200, Jiri Benc wrote: >> On Mon, 3 Oct 2016 11:04:46 -0700, Pravin Shelar wrote: >> > This is not correct way to detect MPLS packet. inner_protocol can be >> > set by any tunnel device for using tunnel offloads. So this would >> > break the fragmentation for encapsulated packets. >> >> You're right, stupid me. > > Actually, too little caffeine in the morning. I actually did consider > this and I believe my patch is correct. It doesn't matter what the > encapsulation is, we want to fragment the *inner* packet. And this is > exactly what this patch does. > > Besides, the only case is MPLS anyway. I'm not aware of any code path > that could lead us to here, set inner protocol and not be MPLS. But > even if it is, it should work, provided the encapsulation header is > identical for all fragments and smaller than MAX_L2_LEN. >
This code can be executed on encapsulated geneve or vxlan packets. So in that case encapsulation header would not be same for all fragments.