On 06/18/15 at 09:49pm, Roopa Prabhu wrote:
> +#ifdef CONFIG_LWTUNNEL
> +             if (fi->fib_nh->nh_lwtstate) {
> +                     struct lwtunnel_state *lwtstate;
> +
> +                     lwtstate = fi->fib_nh->nh_lwtstate;
> +                     if (nla_put_u16(skb, RTA_ENCAP_TYPE, lwtstate->type))
> +                             goto nla_put_failure;
> +                     lwtunnel_fill_encap(skb, lwtstate);
> +             }
>       }
> +#endif

Misplaced #endif ;-)

Other than that I managed to rebase my changes onto yours and it
looks clean.

Since we also discussed this a bit at NFWS, I'm enclosing a quick
summary:

 * Overall consensus that a lightweight flow based encapsulation
   makes sense.
 * Realization that what we actually want is stackable skb metadata
   between layers without over engineering it.
 * Consensus to avoid adding it to skb_shared_info and try to reuse
   the skb dst field.
 * New dst_metadata type similar to xfrm_dst which can carry metadata
   such as encapsulation instructions/information.
 * Can be made stackable to implement nested encapsulation if needed.
   Left out in the beginning to keep it simple.
 * Possible optimization option by putting the dst_metadata into a
   per cpu scratch buffer or stack without taking a reference and
   only force the reference & allocation when the skb is about to
   be queued. The regular fast path should never queue a skb with
   dst metadata attached.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to