OSDN Git Service

net: qmi_wwan: use dev_addr_mod()
authorJakub Kicinski <kuba@kernel.org>
Thu, 21 Oct 2021 13:12:05 +0000 (06:12 -0700)
committerJakub Kicinski <kuba@kernel.org>
Fri, 22 Oct 2021 17:15:58 +0000 (10:15 -0700)
Commit 406f42fa0d3c ("net-next: When a bond have a massive amount
of VLANs...") introduced a rbtree for faster Ethernet address look
up. To maintain netdev->dev_addr in this tree we need to make all
the writes to it got through appropriate helpers.

Acked-by: Bjørn Mork <bjorn@mork.no>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/usb/qmi_wwan.c

index 33ada2c..86b814e 100644 (file)
@@ -835,8 +835,11 @@ static int qmi_wwan_bind(struct usbnet *dev, struct usb_interface *intf)
 
        /* make MAC addr easily distinguishable from an IP header */
        if (possibly_iphdr(dev->net->dev_addr)) {
-               dev->net->dev_addr[0] |= 0x02;  /* set local assignment bit */
-               dev->net->dev_addr[0] &= 0xbf;  /* clear "IP" bit */
+               u8 addr = dev->net->dev_addr[0];
+
+               addr |= 0x02;   /* set local assignment bit */
+               addr &= 0xbf;   /* clear "IP" bit */
+               dev_addr_mod(dev->net, 0, &addr, 1);
        }
        dev->net->netdev_ops = &qmi_wwan_netdev_ops;
        dev->net->sysfs_groups[0] = &qmi_wwan_sysfs_attr_group;