]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: s/dev_get_mac_address/netif_get_mac_address/
authorStanislav Fomichev <sdf@fomichev.me>
Thu, 17 Jul 2025 17:23:28 +0000 (10:23 -0700)
committerJakub Kicinski <kuba@kernel.org>
Sat, 19 Jul 2025 00:27:46 +0000 (17:27 -0700)
Commit cc34acd577f1 ("docs: net: document new locking reality")
introduced netif_ vs dev_ function semantics: the former expects locked
netdev, the latter takes care of the locking. We don't strictly
follow this semantics on either side, but there are more dev_xxx handlers
now that don't fit. Rename them to netif_xxx where appropriate.

netif_get_mac_address is used only by tun/tap, so move it into
NETDEV_INTERNAL namespace.

Signed-off-by: Stanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20250717172333.1288349-3-sdf@fomichev.me
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/tap.c
drivers/net/tun.c
include/linux/netdevice.h
net/core/dev.c
net/core/dev_ioctl.c
net/core/net-sysfs.c

index d82eb7276a8bbbdfd98875a4ab8666ff3145c22e..1197f245e87375586d9eaf7a95e415dfc3133d98 100644 (file)
@@ -1000,8 +1000,8 @@ static long tap_ioctl(struct file *file, unsigned int cmd,
                        return -ENOLINK;
                }
                ret = 0;
-               dev_get_mac_address((struct sockaddr *)&ss, dev_net(tap->dev),
-                                   tap->dev->name);
+               netif_get_mac_address((struct sockaddr *)&ss, dev_net(tap->dev),
+                                     tap->dev->name);
                if (copy_to_user(&ifr->ifr_name, tap->dev->name, IFNAMSIZ) ||
                    copy_to_user(&ifr->ifr_hwaddr, &ss, sizeof(ifr->ifr_hwaddr)))
                        ret = -EFAULT;
@@ -1282,3 +1282,4 @@ MODULE_DESCRIPTION("Common library for drivers implementing the TAP interface");
 MODULE_AUTHOR("Arnd Bergmann <arnd@arndb.de>");
 MODULE_AUTHOR("Sainath Grandhi <sainath.grandhi@intel.com>");
 MODULE_LICENSE("GPL");
+MODULE_IMPORT_NS("NETDEV_INTERNAL");
index e65228ba3fae4dd9c540456303b0c65ce185aa98..cc6c5018066370f1e778efc987c834eac0f1076a 100644 (file)
@@ -3223,7 +3223,7 @@ static long __tun_chr_ioctl(struct file *file, unsigned int cmd,
 
        case SIOCGIFHWADDR:
                /* Get hw address */
-               dev_get_mac_address(&ifr.ifr_hwaddr, net, tun->dev->name);
+               netif_get_mac_address(&ifr.ifr_hwaddr, net, tun->dev->name);
                if (copy_to_user(argp, &ifr, ifreq_len))
                        ret = -EFAULT;
                break;
@@ -3732,3 +3732,4 @@ MODULE_AUTHOR(DRV_COPYRIGHT);
 MODULE_LICENSE("GPL");
 MODULE_ALIAS_MISCDEV(TUN_MINOR);
 MODULE_ALIAS("devname:net/tun");
+MODULE_IMPORT_NS("NETDEV_INTERNAL");
index c6ba4ea66039daae1bd970d8dc0325ac4333e16d..b3a48934b4cb8ab88029da02a1d26478e128c09e 100644 (file)
@@ -4222,7 +4222,7 @@ int dev_set_mac_address(struct net_device *dev, struct sockaddr_storage *ss,
                        struct netlink_ext_ack *extack);
 int dev_set_mac_address_user(struct net_device *dev, struct sockaddr_storage *ss,
                             struct netlink_ext_ack *extack);
-int dev_get_mac_address(struct sockaddr *sa, struct net *net, char *dev_name);
+int netif_get_mac_address(struct sockaddr *sa, struct net *net, char *dev_name);
 int netif_get_port_parent_id(struct net_device *dev,
                             struct netdev_phys_item_id *ppid, bool recurse);
 bool netdev_port_same_parent_id(struct net_device *a, struct net_device *b);
index 4979a9197b18c4aba2c0a3083abffe6a1a5dabf5..d71f03874057ccbe0aeb4750e83aa499ce55e8af 100644 (file)
@@ -9765,7 +9765,7 @@ int netif_set_mac_address(struct net_device *dev, struct sockaddr_storage *ss,
 DECLARE_RWSEM(dev_addr_sem);
 
 /* "sa" is a true struct sockaddr with limited "sa_data" member. */
-int dev_get_mac_address(struct sockaddr *sa, struct net *net, char *dev_name)
+int netif_get_mac_address(struct sockaddr *sa, struct net *net, char *dev_name)
 {
        size_t size = sizeof(sa->sa_data_min);
        struct net_device *dev;
@@ -9791,7 +9791,7 @@ unlock:
        up_read(&dev_addr_sem);
        return ret;
 }
-EXPORT_SYMBOL(dev_get_mac_address);
+EXPORT_SYMBOL_NS_GPL(netif_get_mac_address, "NETDEV_INTERNAL");
 
 int netif_change_carrier(struct net_device *dev, bool new_carrier)
 {
index 616479e714663376dc92098fdd2704c25bdd938b..ceb2d63a818af5d653c8391622ef559ba1b83bf1 100644 (file)
@@ -728,7 +728,8 @@ int dev_ioctl(struct net *net, unsigned int cmd, struct ifreq *ifr,
        switch (cmd) {
        case SIOCGIFHWADDR:
                dev_load(net, ifr->ifr_name);
-               ret = dev_get_mac_address(&ifr->ifr_hwaddr, net, ifr->ifr_name);
+               ret = netif_get_mac_address(&ifr->ifr_hwaddr, net,
+                                           ifr->ifr_name);
                if (colon)
                        *colon = ':';
                return ret;
index f7a6cc7aea79eecfb28044ffdcebea22efa05cae..e41ad1890e49119ec7bed34c0e25a0a48eabb396 100644 (file)
@@ -256,7 +256,7 @@ static ssize_t name_assign_type_show(struct device *dev,
 }
 static DEVICE_ATTR_RO(name_assign_type);
 
-/* use same locking rules as GIFHWADDR ioctl's (dev_get_mac_address()) */
+/* use same locking rules as GIFHWADDR ioctl's (netif_get_mac_address()) */
 static ssize_t address_show(struct device *dev, struct device_attribute *attr,
                            char *buf)
 {