]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
geneve: allow changing DF behavior after creation
authorSabrina Dubroca <sd@queasysnail.net>
Thu, 18 Jun 2020 10:13:22 +0000 (12:13 +0200)
committerSasha Levin <sashal@kernel.org>
Tue, 30 Jun 2020 19:36:43 +0000 (15:36 -0400)
[ Upstream commit 56c09de347e40804fc8dad155272fb9609e0a97b ]

Currently, trying to change the DF parameter of a geneve device does
nothing:

    # ip -d link show geneve1
    14: geneve1: <snip>
        link/ether <snip>
        geneve id 1 remote 10.0.0.1 ttl auto df set dstport 6081 <snip>
    # ip link set geneve1 type geneve id 1 df unset
    # ip -d link show geneve1
    14: geneve1: <snip>
        link/ether <snip>
        geneve id 1 remote 10.0.0.1 ttl auto df set dstport 6081 <snip>

We just need to update the value in geneve_changelink.

Fixes: a025fb5f49ad ("geneve: Allow configuration of DF behaviour")
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Reviewed-by: Stefano Brivio <sbrivio@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/geneve.c

index cac75c7d1d01817a75456ba5aad47cf76f11f370..19d9d78a6df2c31aab9c5811c8e615c877c4fb3c 100644 (file)
@@ -1649,6 +1649,7 @@ static int geneve_changelink(struct net_device *dev, struct nlattr *tb[],
        geneve->collect_md = metadata;
        geneve->use_udp6_rx_checksums = use_udp6_rx_checksums;
        geneve->ttl_inherit = ttl_inherit;
+       geneve->df = df;
        geneve_unquiesce(geneve, gs4, gs6);
 
        return 0;