On Thu, Aug 18, 2016 at 2:35 PM, Jesse Gross <je...@kernel.org> wrote:
> On Wed, Aug 17, 2016 at 10:17 PM, pravin shelar <pshe...@ovn.org> wrote:
>> On Wed, Aug 17, 2016 at 5:26 PM, Jesse Gross <je...@kernel.org> wrote:
>>> On Wed, Aug 17, 2016 at 10:23 AM, Pravin B Shelar <pshe...@ovn.org> wrote:
>>>> diff --git a/datapath/linux/compat/gso.c b/datapath/linux/compat/gso.c
>>>> index 89df07f..48a56b9 100644
>>>> --- a/datapath/linux/compat/gso.c
>>>> +++ b/datapath/linux/compat/gso.c
>>>> @@ -236,12 +236,12 @@ static int output_ip(struct sk_buff *skb)
>>>>
>>>>  int rpl_ip_local_out(struct net *net, struct sock *sk, struct sk_buff 
>>>> *skb)
>>>>  {
>>>> -       /* This bit set can confuse some drivers on old kernel. */
>>>> -       skb->encapsulation = 0;
>>>> -
>>>>         if (!OVS_GSO_CB(skb)->fix_segment)
>>>>                 return output_ip(skb);
>>>>
>>>> +       /* This bit set can confuse some drivers on old kernel. */
>>>> +       skb->encapsulation = 0;
>>>> +
>>>>         if (skb_is_gso(skb)) {
>>>>                 int ret;
>>>>                 int id;
>>>> @@ -282,12 +282,12 @@ static int output_ipv6(struct sk_buff *skb)
>>>>
>>>>  int rpl_ip6_local_out(struct net *net, struct sock *sk, struct sk_buff 
>>>> *skb)
>>>>  {
>>>> -       /* This bit set can confuse some drivers on old kernel. */
>>>> -       skb->encapsulation = 0;
>>>> -
>>>>         if (!OVS_GSO_CB(skb)->fix_segment)
>>>>                 return output_ipv6(skb);
>>>>
>>>> +       /* This bit set can confuse some drivers on old kernel. */
>>>> +       skb->encapsulation = 0;
>>>> +
>>>>         if (skb_is_gso(skb)) {
>>>>                 int ret;
>>>
>>> Should we just put this back into the GSO code path where it was
>>> previously? I think that most closely mirrors the original version of
>>> the patchset and also upstream. I still think that we have an issue
>>> where all checksum offloaded packets will be sent directly to the
>>> stack. If we were to fix this then LCO will incorrectly have
>>> skb->encapsulation cleared.
>>>
>> I agree cleaning the bit in compat GSO code would be in-sync with upstream.
>> But this is right place to clear the encapsulation bit. since after
>> this point the skb would not need any offloading for inner packet. LCO
>> packet checksum would be handled by the skb_checksum_help() call in
>> same rpl_ip_local_out() function.
>
> OK, I guess you are right.
>
> Acked-by: Jesse Gross <je...@kernel.org>

Thanks for reviews.
I pushed both patches to master and branch-2.6.
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to