device create: dca: convert device_create to device_create_drvdata
authorGreg Kroah-Hartman <gregkh@suse.de>
Wed, 21 May 2008 19:52:33 +0000 (12:52 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 22 Jul 2008 04:54:41 +0000 (21:54 -0700)
device_create() is race-prone, so use the race-free
device_create_drvdata() instead as device_create() is going away.

Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/dca/dca-sysfs.c

index 011328faa5f21c88b1c007eb405129137e709a87..9a70377bfb34e808e954afb266eb5218f8bb7982 100644 (file)
@@ -14,8 +14,9 @@ int dca_sysfs_add_req(struct dca_provider *dca, struct device *dev, int slot)
 {
        struct device *cd;
 
-       cd = device_create(dca_class, dca->cd, MKDEV(0, slot + 1),
-                          "requester%d", slot);
+       cd = device_create_drvdata(dca_class, dca->cd,
+                                  MKDEV(0, slot + 1), NULL,
+                                  "requester%d", slot);
        if (IS_ERR(cd))
                return PTR_ERR(cd);
        return 0;
@@ -46,7 +47,8 @@ idr_try_again:
                return err;
        }
 
-       cd = device_create(dca_class, dev, MKDEV(0, 0), "dca%d", dca->id);
+       cd = device_create_drvdata(dca_class, dev, MKDEV(0, 0), NULL,
+                                  "dca%d", dca->id);
        if (IS_ERR(cd)) {
                spin_lock(&dca_idr_lock);
                idr_remove(&dca_idr, dca->id);