device create: dca: convert device_create to device_create_drvdata

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>
This commit is contained in:
Greg Kroah-Hartman
2008-05-21 12:52:33 -07:00
parent 6143b59970
commit 275e64decc

View File

@@ -14,7 +14,8 @@ int dca_sysfs_add_req(struct dca_provider *dca, struct device *dev, int slot)
{ {
struct device *cd; struct device *cd;
cd = device_create(dca_class, dca->cd, MKDEV(0, slot + 1), cd = device_create_drvdata(dca_class, dca->cd,
MKDEV(0, slot + 1), NULL,
"requester%d", slot); "requester%d", slot);
if (IS_ERR(cd)) if (IS_ERR(cd))
return PTR_ERR(cd); return PTR_ERR(cd);
@@ -46,7 +47,8 @@ idr_try_again:
return err; 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)) { if (IS_ERR(cd)) {
spin_lock(&dca_idr_lock); spin_lock(&dca_idr_lock);
idr_remove(&dca_idr, dca->id); idr_remove(&dca_idr, dca->id);