浏览代码

net: remove driver_data direct access of struct device from more drivers

In the near future, the driver core is going to not allow direct access
to the driver_data pointer in struct device.  Instead, the functions
dev_get_drvdata() and dev_set_drvdata() should be used.  These functions
have been around since the beginning, so are backwards compatible with
all older kernel versions.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Greg Kroah-Hartman 16 年之前
父节点
当前提交
c7ae011dc8
共有 3 个文件被更改,包括 11 次插入11 次删除
  1. 4 4
      drivers/net/ehea/ehea_main.c
  2. 4 4
      drivers/net/ibmveth.c
  3. 3 3
      drivers/net/sb1250-mac.c

+ 4 - 4
drivers/net/ehea/ehea_main.c

@@ -3256,7 +3256,7 @@ static ssize_t ehea_probe_port(struct device *dev,
 			       struct device_attribute *attr,
 			       struct device_attribute *attr,
 			       const char *buf, size_t count)
 			       const char *buf, size_t count)
 {
 {
-	struct ehea_adapter *adapter = dev->driver_data;
+	struct ehea_adapter *adapter = dev_get_drvdata(dev);
 	struct ehea_port *port;
 	struct ehea_port *port;
 	struct device_node *eth_dn = NULL;
 	struct device_node *eth_dn = NULL;
 	int i;
 	int i;
@@ -3311,7 +3311,7 @@ static ssize_t ehea_remove_port(struct device *dev,
 				struct device_attribute *attr,
 				struct device_attribute *attr,
 				const char *buf, size_t count)
 				const char *buf, size_t count)
 {
 {
-	struct ehea_adapter *adapter = dev->driver_data;
+	struct ehea_adapter *adapter = dev_get_drvdata(dev);
 	struct ehea_port *port;
 	struct ehea_port *port;
 	int i;
 	int i;
 	u32 logical_port_id;
 	u32 logical_port_id;
@@ -3399,7 +3399,7 @@ static int __devinit ehea_probe_adapter(struct of_device *dev,
 
 
 	adapter->pd = EHEA_PD_ID;
 	adapter->pd = EHEA_PD_ID;
 
 
-	dev->dev.driver_data = adapter;
+	dev_set_drvdata(&dev->dev, adapter);
 
 
 
 
 	/* initialize adapter and ports */
 	/* initialize adapter and ports */
@@ -3463,7 +3463,7 @@ out:
 
 
 static int __devexit ehea_remove(struct of_device *dev)
 static int __devexit ehea_remove(struct of_device *dev)
 {
 {
-	struct ehea_adapter *adapter = dev->dev.driver_data;
+	struct ehea_adapter *adapter = dev_get_drvdata(&dev->dev);
 	int i;
 	int i;
 
 
 	for (i = 0; i < EHEA_MAX_PORTS; i++)
 	for (i = 0; i < EHEA_MAX_PORTS; i++)

+ 4 - 4
drivers/net/ibmveth.c

@@ -1255,7 +1255,7 @@ static int __devinit ibmveth_probe(struct vio_dev *dev, const struct vio_device_
 		return -ENOMEM;
 		return -ENOMEM;
 
 
 	adapter = netdev_priv(netdev);
 	adapter = netdev_priv(netdev);
-	dev->dev.driver_data = netdev;
+	dev_set_drvdata(&dev->dev, netdev);
 
 
 	adapter->vdev = dev;
 	adapter->vdev = dev;
 	adapter->netdev = netdev;
 	adapter->netdev = netdev;
@@ -1341,7 +1341,7 @@ static int __devinit ibmveth_probe(struct vio_dev *dev, const struct vio_device_
 
 
 static int __devexit ibmveth_remove(struct vio_dev *dev)
 static int __devexit ibmveth_remove(struct vio_dev *dev)
 {
 {
-	struct net_device *netdev = dev->dev.driver_data;
+	struct net_device *netdev = dev_get_drvdata(&dev->dev);
 	struct ibmveth_adapter *adapter = netdev_priv(netdev);
 	struct ibmveth_adapter *adapter = netdev_priv(netdev);
 	int i;
 	int i;
 
 
@@ -1474,8 +1474,8 @@ const char * buf, size_t count)
 	struct ibmveth_buff_pool *pool = container_of(kobj,
 	struct ibmveth_buff_pool *pool = container_of(kobj,
 						      struct ibmveth_buff_pool,
 						      struct ibmveth_buff_pool,
 						      kobj);
 						      kobj);
-	struct net_device *netdev =
-	    container_of(kobj->parent, struct device, kobj)->driver_data;
+	struct net_device *netdev = dev_get_drvdata(
+	    container_of(kobj->parent, struct device, kobj));
 	struct ibmveth_adapter *adapter = netdev_priv(netdev);
 	struct ibmveth_adapter *adapter = netdev_priv(netdev);
 	long value = simple_strtol(buf, NULL, 10);
 	long value = simple_strtol(buf, NULL, 10);
 	long rc;
 	long rc;

+ 3 - 3
drivers/net/sb1250-mac.c

@@ -2300,7 +2300,7 @@ static const struct net_device_ops sbmac_netdev_ops = {
 
 
 static int sbmac_init(struct platform_device *pldev, long long base)
 static int sbmac_init(struct platform_device *pldev, long long base)
 {
 {
-	struct net_device *dev = pldev->dev.driver_data;
+	struct net_device *dev = dev_get_drvdata(&pldev->dev);
 	int idx = pldev->id;
 	int idx = pldev->id;
 	struct sbmac_softc *sc = netdev_priv(dev);
 	struct sbmac_softc *sc = netdev_priv(dev);
 	unsigned char *eaddr;
 	unsigned char *eaddr;
@@ -2731,7 +2731,7 @@ static int __init sbmac_probe(struct platform_device *pldev)
 		goto out_unmap;
 		goto out_unmap;
 	}
 	}
 
 
-	pldev->dev.driver_data = dev;
+	dev_set_drvdata(&pldev->dev, dev);
 	SET_NETDEV_DEV(dev, &pldev->dev);
 	SET_NETDEV_DEV(dev, &pldev->dev);
 
 
 	sc = netdev_priv(dev);
 	sc = netdev_priv(dev);
@@ -2756,7 +2756,7 @@ out_out:
 
 
 static int __exit sbmac_remove(struct platform_device *pldev)
 static int __exit sbmac_remove(struct platform_device *pldev)
 {
 {
-	struct net_device *dev = pldev->dev.driver_data;
+	struct net_device *dev = dev_get_drvdata(&pldev->dev);
 	struct sbmac_softc *sc = netdev_priv(dev);
 	struct sbmac_softc *sc = netdev_priv(dev);
 
 
 	unregister_netdev(dev);
 	unregister_netdev(dev);