[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180519.233323.264373261644119438.davem@davemloft.net>
Date: Sat, 19 May 2018 23:33:23 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: u9012063@...il.com
Cc: netdev@...r.kernel.org, petrm@...lanox.com
Subject: Re: [PATCH net] net: ip6_gre: fix tunnel metadata device sharing.
From: William Tu <u9012063@...il.com>
Date: Fri, 18 May 2018 19:22:28 -0700
> Currently ip6gre and ip6erspan share single metadata mode device,
> using 'collect_md_tun'. Thus, when doing:
> ip link add dev ip6gre11 type ip6gretap external
> ip link add dev ip6erspan12 type ip6erspan external
> RTNETLINK answers: File exists
> simply fails due to the 2nd tries to create the same collect_md_tun.
>
> The patch fixes it by adding a separate collect md tunnel device
> for the ip6erspan, 'collect_md_tun_erspan'. As a result, a couple
> of places need to refactor/split up in order to distinguish ip6gre
> and ip6erspan.
>
> First, move the collect_md check at ip6gre_tunnel_{unlink,link} and
> create separate function {ip6gre,ip6ersapn}_tunnel_{link_md,unlink_md}.
> Then before link/unlink, make sure the link_md/unlink_md is called.
> Finally, a separate ndo_uninit is created for ip6erspan. Tested it
> using the samples/bpf/test_tunnel_bpf.sh.
>
> Fixes: ef7baf5e083c ("ip6_gre: add ip6 erspan collect_md mode")
> Signed-off-by: William Tu <u9012063@...il.com>
Applied and queued up for -stable.
Powered by blists - more mailing lists