]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ip: use dev_addr_set() in tunnels
authorJakub Kicinski <kuba@kernel.org>
Tue, 12 Oct 2021 16:06:34 +0000 (09:06 -0700)
committerJakub Kicinski <kuba@kernel.org>
Wed, 13 Oct 2021 16:41:37 +0000 (09:41 -0700)
Use dev_addr_set() instead of writing to netdev->dev_addr
directly in ip tunnels drivers.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ipv4/ip_gre.c
net/ipv4/ip_tunnel.c
net/ipv4/ip_vti.c
net/ipv4/ipip.c
net/ipv6/ip6_gre.c
net/ipv6/ip6_tunnel.c
net/ipv6/ip6_vti.c
net/ipv6/sit.c

index 0fe6c936dc54ac72491a40636b7e86f69b2b6167..2ac2b95c5694364bbd9398a1941d6718fcb7e325 100644 (file)
@@ -986,7 +986,7 @@ static int ipgre_tunnel_init(struct net_device *dev)
 
        __gre_tunnel_init(dev);
 
-       memcpy(dev->dev_addr, &iph->saddr, 4);
+       __dev_addr_set(dev, &iph->saddr, 4);
        memcpy(dev->broadcast, &iph->daddr, 4);
 
        dev->flags              = IFF_NOARP;
index fe9101d3d69e01f18cde6c566c2c9b1627d57ff3..5a473319d3a5c8924d1101f95ea83244f5dbb833 100644 (file)
@@ -834,7 +834,7 @@ static void ip_tunnel_update(struct ip_tunnel_net *itn,
        t->parms.i_key = p->i_key;
        t->parms.o_key = p->o_key;
        if (dev->type != ARPHRD_ETHER) {
-               memcpy(dev->dev_addr, &p->iph.saddr, 4);
+               __dev_addr_set(dev, &p->iph.saddr, 4);
                memcpy(dev->broadcast, &p->iph.daddr, 4);
        }
        ip_tunnel_add(itn, t);
index efe25a0172e6ff4cdb7ea8973c9ce9495b9612ae..8c2bd1d9ddce3891998ce82417bd8c535ee20246 100644 (file)
@@ -425,7 +425,7 @@ static int vti_tunnel_init(struct net_device *dev)
        struct ip_tunnel *tunnel = netdev_priv(dev);
        struct iphdr *iph = &tunnel->parms.iph;
 
-       memcpy(dev->dev_addr, &iph->saddr, 4);
+       __dev_addr_set(dev, &iph->saddr, 4);
        memcpy(dev->broadcast, &iph->daddr, 4);
 
        dev->flags              = IFF_NOARP;
index 3aa78ccbec3ed840df4fb544492e10b2ce824355..123ea63a04cbf04786bd7a170ea942301cc9e0bb 100644 (file)
@@ -380,7 +380,7 @@ static int ipip_tunnel_init(struct net_device *dev)
 {
        struct ip_tunnel *tunnel = netdev_priv(dev);
 
-       memcpy(dev->dev_addr, &tunnel->parms.iph.saddr, 4);
+       __dev_addr_set(dev, &tunnel->parms.iph.saddr, 4);
        memcpy(dev->broadcast, &tunnel->parms.iph.daddr, 4);
 
        tunnel->tun_hlen = 0;
index 3ad201d372d886dcbab67222f09ccb5413c6c489..d831d243969327b2cd4b539199e02a897a6c14f7 100644 (file)
@@ -1088,7 +1088,7 @@ static void ip6gre_tnl_link_config_common(struct ip6_tnl *t)
        struct flowi6 *fl6 = &t->fl.u.ip6;
 
        if (dev->type != ARPHRD_ETHER) {
-               memcpy(dev->dev_addr, &p->laddr, sizeof(struct in6_addr));
+               __dev_addr_set(dev, &p->laddr, sizeof(struct in6_addr));
                memcpy(dev->broadcast, &p->raddr, sizeof(struct in6_addr));
        }
 
@@ -1521,7 +1521,7 @@ static int ip6gre_tunnel_init(struct net_device *dev)
        if (tunnel->parms.collect_md)
                return 0;
 
-       memcpy(dev->dev_addr, &tunnel->parms.laddr, sizeof(struct in6_addr));
+       __dev_addr_set(dev, &tunnel->parms.laddr, sizeof(struct in6_addr));
        memcpy(dev->broadcast, &tunnel->parms.raddr, sizeof(struct in6_addr));
 
        if (ipv6_addr_any(&tunnel->parms.raddr))
index 20a67efda47f520578f9cb09ad2d3f2609b6d62d..484aca492cc06858319e87ba9c989de9f378e896 100644 (file)
@@ -1449,7 +1449,7 @@ static void ip6_tnl_link_config(struct ip6_tnl *t)
        unsigned int mtu;
        int t_hlen;
 
-       memcpy(dev->dev_addr, &p->laddr, sizeof(struct in6_addr));
+       __dev_addr_set(dev, &p->laddr, sizeof(struct in6_addr));
        memcpy(dev->broadcast, &p->raddr, sizeof(struct in6_addr));
 
        /* Set up flowi template */
index 1d8e3ffa225d8353826bb035a463c2d4eb898311..527e9ead7449e5229db11b73622ff723847ffc96 100644 (file)
@@ -660,7 +660,7 @@ static void vti6_link_config(struct ip6_tnl *t, bool keep_mtu)
        struct net_device *tdev = NULL;
        int mtu;
 
-       memcpy(dev->dev_addr, &p->laddr, sizeof(struct in6_addr));
+       __dev_addr_set(dev, &p->laddr, sizeof(struct in6_addr));
        memcpy(dev->broadcast, &p->raddr, sizeof(struct in6_addr));
 
        p->flags &= ~(IP6_TNL_F_CAP_XMIT | IP6_TNL_F_CAP_RCV |
index ef0c7a7c18e23760edecb9d8b3541097c4ca0caa..1b57ee36d6682e04085aa271c6c5c09e6e3a7b7e 100644 (file)
@@ -204,7 +204,7 @@ static int ipip6_tunnel_create(struct net_device *dev)
        struct sit_net *sitn = net_generic(net, sit_net_id);
        int err;
 
-       memcpy(dev->dev_addr, &t->parms.iph.saddr, 4);
+       __dev_addr_set(dev, &t->parms.iph.saddr, 4);
        memcpy(dev->broadcast, &t->parms.iph.daddr, 4);
 
        if ((__force u16)t->parms.i_flags & SIT_ISATAP)
@@ -1149,7 +1149,7 @@ static void ipip6_tunnel_update(struct ip_tunnel *t, struct ip_tunnel_parm *p,
        synchronize_net();
        t->parms.iph.saddr = p->iph.saddr;
        t->parms.iph.daddr = p->iph.daddr;
-       memcpy(t->dev->dev_addr, &p->iph.saddr, 4);
+       __dev_addr_set(t->dev, &p->iph.saddr, 4);
        memcpy(t->dev->broadcast, &p->iph.daddr, 4);
        ipip6_tunnel_link(sitn, t);
        t->parms.iph.ttl = p->iph.ttl;