Skip to content

Commit 7a66bbc

Browse files
NicolasDichteldavem330
authored andcommitted
net: remove iflink field from struct net_device
Now that all users of iflink have the ndo_get_iflink handler available, it's possible to remove this field. By default, dev_get_iflink() returns the ifindex of the interface. Signed-off-by: Nicolas Dichtel <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent abd2be0 commit 7a66bbc

File tree

2 files changed

+3
-13
lines changed

2 files changed

+3
-13
lines changed

include/linux/netdevice.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1538,7 +1538,7 @@ struct net_device {
15381538
netdev_features_t mpls_features;
15391539

15401540
int ifindex;
1541-
int iflink;
1541+
int group;
15421542

15431543
struct net_device_stats stats;
15441544

@@ -1741,7 +1741,6 @@ struct net_device {
17411741
#endif
17421742
struct phy_device *phydev;
17431743
struct lock_class_key *qdisc_tx_busylock;
1744-
int group;
17451744
struct pm_qos_request pm_qos_req;
17461745
};
17471746
#define to_net_dev(d) container_of(d, struct net_device, dev)

net/core/dev.c

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -672,7 +672,7 @@ int dev_get_iflink(const struct net_device *dev)
672672
if (dev->netdev_ops && dev->netdev_ops->ndo_get_iflink)
673673
return dev->netdev_ops->ndo_get_iflink(dev);
674674

675-
return dev->iflink;
675+
return dev->ifindex;
676676
}
677677
EXPORT_SYMBOL(dev_get_iflink);
678678

@@ -6331,8 +6331,6 @@ int register_netdevice(struct net_device *dev)
63316331
spin_lock_init(&dev->addr_list_lock);
63326332
netdev_set_addr_lockdep_class(dev);
63336333

6334-
dev->iflink = -1;
6335-
63366334
ret = dev_get_valid_name(net, dev, dev->name);
63376335
if (ret < 0)
63386336
goto out;
@@ -6362,9 +6360,6 @@ int register_netdevice(struct net_device *dev)
63626360
else if (__dev_get_by_index(net, dev->ifindex))
63636361
goto err_uninit;
63646362

6365-
if (dev_get_iflink(dev) == -1)
6366-
dev->iflink = dev->ifindex;
6367-
63686363
/* Transfer changeable features to wanted_features and enable
63696364
* software offloads (GSO and GRO).
63706365
*/
@@ -7077,12 +7072,8 @@ int dev_change_net_namespace(struct net_device *dev, struct net *net, const char
70777072
dev_net_set(dev, net);
70787073

70797074
/* If there is an ifindex conflict assign a new one */
7080-
if (__dev_get_by_index(net, dev->ifindex)) {
7081-
int iflink = (dev_get_iflink(dev) == dev->ifindex);
7075+
if (__dev_get_by_index(net, dev->ifindex))
70827076
dev->ifindex = dev_new_index(net);
7083-
if (iflink)
7084-
dev->iflink = dev->ifindex;
7085-
}
70867077

70877078
/* Send a netdev-add uevent to the new namespace */
70887079
kobject_uevent(&dev->dev.kobj, KOBJ_ADD);

0 commit comments

Comments
 (0)