Subject: Re: [PATCH net-next RFC v2 1/3] lwt: infrastructure to support light weight tunnels

From: Robert Shearman <[email-masked]>
Date: Fri, 19 Jun 2015 18:25:16 +0100

n 19/06/15 16:14, roopa wrote:
> On 6/19/15, 7:43 AM, Robert Shearman wrote:
>>>
>>> +
>>> +static inline struct lwtunnel_state *lwtunnel_skb_lwstate(struct
>>> sk_buff *skb)
>>> +{
>>> +    struct rtable *rt = (struct rtable *)skb_dst(skb);
>>> +
>>> +    return rt->rt_lwtstate;
>>> +}
>>
>> It doesn't look like this patch will build on its own because
>> rt_lwtstate isn't added to struct rtable until patch 2.
> looks like i messed up the patch creation. I will fix that with the next
> series.
>>
>> More importantly, is it safe to assume that skb_dst will always return
>> an IPv4 dst? How will this look when IPv6 support is added?
>
> Today lwtunnel_skb_lwstate is called from lwtunnel_output which is only
> called from ipv4 code.
> And my ipv6 variant code was supposed to have a 6 suffix. something like
> lwtunnel_output6.
> Or to be more explicit i will probably have variants of the output and
> skb handling functions like,
> lwtunnel_output_ipv4 and lwtunnel_output_ipv6.

Do you intend for these functions to be used by netdevices to support 
the vxlan use case?

If so, then how will the netdevice know which one of the two to call? 
Will there have to be a netdevice for ipv4 and a netdevice for ipv6?

If not, could you outline how you intend for it to be implemented?

Thanks,
Rob