On Tue, Feb 23, 2016 at 5:01 PM, Joe Stringer <[email protected]> wrote: > On 19 February 2016 at 16:03, Pravin B Shelar <[email protected]> wrote: >> @@ -119,25 +119,9 @@ static inline int rpl_ip_do_fragment(struct sock *sk, >> struct sk_buff *skb, >> int rpl_ip_defrag(struct sk_buff *skb, u32 user); >> #define ip_defrag rpl_ip_defrag >> >> +#endif /* HAVE_CORRECT_MRU_HANDLING */ >> int __init rpl_ipfrag_init(void); >> void rpl_ipfrag_fini(void); >> -#else /* HAVE_CORRECT_MRU_HANDLING || !OVS_FRAGMENT_BACKPORT */ >> - >> -/* We have no good way to detect the presence of upstream commit >> 8282f27449bf >> - * ("inet: frag: Always orphan skbs inside ip_defrag()"), but it should be >> - * always included in kernels 4.5+. */ >> -#if LINUX_VERSION_CODE < KERNEL_VERSION(4,5,0) >> -static inline int rpl_ip_defrag(struct sk_buff *skb, u32 user) >> -{ >> - skb_orphan(skb); >> - return ip_defrag(skb, user); >> -} >> -#define ip_defrag rpl_ip_defrag >> -#endif > > Quick comment on this piece; it fixes an issue that would be seen on > kernels 4.4 and earlier. Kernels <4.2 will use the full ip_defrag > backport, so the fix is still provided there. Upstream on kernel.org, > kernels 4.2 and 4.3 are EOL'd, and the upstream fix was queued up for > -stable, so the affected kernels are fairly minimal. The only > exception I'm aware of would be those using Ubuntu 15.10, which ships > a 4.2 kernel. > > Given the small set of affected kernels, and that the issue requires > use of conntrack on IP fragments, passing the packets to/from the > local stack to trigger the BUG, this is probably fine. Alternatively > we could consider keeping this in the > "!defined(HAVE_CORRECT_MRU_HANDLING) && LINUX_VERSION_CODE < > KERNEL_VERSION(4,5,0)" case.
ok, I will keep the function. But it is in case of HAVE_CORRECT_MRU_HANDLING defined and kernel older than 4.5. _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
