ipv6: minor code reorg in inet6_fill_ifla6_attrs()
authorNicolas Dichtel <nicolas.dichtel@6wind.com>
Mon, 30 Sep 2019 12:02:16 +0000 (14:02 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 1 Oct 2019 21:59:03 +0000 (14:59 -0700)
Just put related code together to ease code reading: the memcpy() is
related to the nla_reserve().

Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/addrconf.c

index 6a576ff..413b00c 100644 (file)
@@ -5552,14 +5552,13 @@ static int inet6_fill_ifla6_attrs(struct sk_buff *skb, struct inet6_dev *idev,
        nla = nla_reserve(skb, IFLA_INET6_TOKEN, sizeof(struct in6_addr));
        if (!nla)
                goto nla_put_failure;
-
-       if (nla_put_u8(skb, IFLA_INET6_ADDR_GEN_MODE, idev->cnf.addr_gen_mode))
-               goto nla_put_failure;
-
        read_lock_bh(&idev->lock);
        memcpy(nla_data(nla), idev->token.s6_addr, nla_len(nla));
        read_unlock_bh(&idev->lock);
 
+       if (nla_put_u8(skb, IFLA_INET6_ADDR_GEN_MODE, idev->cnf.addr_gen_mode))
+               goto nla_put_failure;
+
        return 0;
 
 nla_put_failure: