r8152: sync sa_family with the media type of network device
authorCrag.Wang <crag.wang@dell.com>
Mon, 22 Apr 2019 05:03:43 +0000 (13:03 +0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 23 Apr 2019 05:14:43 +0000 (22:14 -0700)
Without this patch the socket address family sporadically gets wrong
value ends up the dev_set_mac_address() fails to set the desired MAC
address.

Fixes: 25766271e42f ("r8152: Refresh MAC address during USBDEVFS_RESET")
Signed-off-by: Crag.Wang <crag.wang@dell.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-By: Mario Limonciello <mario.limonciello@dell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/r8152.c

index 6d63dcb..b01bfa6 100644 (file)
@@ -1225,6 +1225,8 @@ static int determine_ethernet_addr(struct r8152 *tp, struct sockaddr *sa)
        struct net_device *dev = tp->netdev;
        int ret;
 
+       sa->sa_family = dev->type;
+
        if (tp->version == RTL_VER_01) {
                ret = pla_ocp_read(tp, PLA_IDR, 8, sa->sa_data);
        } else {