diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2008-05-21 12:52:33 -0700 |
---|---|---|
committer | Stephen Rothwell <sfr@canb.auug.org.au> | 2008-06-05 10:45:28 +1000 |
commit | 4c4f70599a2d61abe5588b7ba9b5e0cdb73927a4 (patch) | |
tree | 639ed9aa443b61be6fc965d4d3dd962a72390494 /drivers/usb | |
parent | ac59af15e1ea8e650f552f4d184d498b98822e8f (diff) |
device create: usb: 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>
Diffstat (limited to 'drivers/usb')
-rw-r--r-- | drivers/usb/core/devio.c | 10 | ||||
-rw-r--r-- | drivers/usb/core/file.c | 5 | ||||
-rw-r--r-- | drivers/usb/gadget/printer.c | 4 | ||||
-rw-r--r-- | drivers/usb/mon/mon_bin.c | 5 |
4 files changed, 15 insertions, 9 deletions
diff --git a/drivers/usb/core/devio.c b/drivers/usb/core/devio.c index 75ede25cdff9..096cea41ee34 100644 --- a/drivers/usb/core/devio.c +++ b/drivers/usb/core/devio.c @@ -1687,9 +1687,13 @@ static int usb_classdev_add(struct usb_device *dev) { int minor = ((dev->bus->busnum-1) * 128) + (dev->devnum-1); - dev->usb_classdev = device_create(usb_classdev_class, &dev->dev, - MKDEV(USB_DEVICE_MAJOR, minor), - "usbdev%d.%d", dev->bus->busnum, dev->devnum); + dev->usb_classdev = device_create_drvdata(usb_classdev_class, + &dev->dev, + MKDEV(USB_DEVICE_MAJOR, + minor), NULL, + "usbdev%d.%d", + dev->bus->busnum, + dev->devnum); if (IS_ERR(dev->usb_classdev)) return PTR_ERR(dev->usb_classdev); diff --git a/drivers/usb/core/file.c b/drivers/usb/core/file.c index 8133c99c6c5c..1ec4a677198b 100644 --- a/drivers/usb/core/file.c +++ b/drivers/usb/core/file.c @@ -193,8 +193,9 @@ int usb_register_dev(struct usb_interface *intf, ++temp; else temp = name; - intf->usb_dev = device_create(usb_class->class, &intf->dev, - MKDEV(USB_MAJOR, minor), "%s", temp); + intf->usb_dev = device_create_drvdata(usb_class->class, &intf->dev, + MKDEV(USB_MAJOR, minor), NULL, + "%s", temp); if (IS_ERR(intf->usb_dev)) { down_write(&minor_rwsem); usb_minors[intf->minor] = NULL; diff --git a/drivers/usb/gadget/printer.c b/drivers/usb/gadget/printer.c index 76be75e3ab8f..ab9a49396b77 100644 --- a/drivers/usb/gadget/printer.c +++ b/drivers/usb/gadget/printer.c @@ -1360,8 +1360,8 @@ printer_bind(struct usb_gadget *gadget) /* Setup the sysfs files for the printer gadget. */ - dev->pdev = device_create(usb_gadget_class, NULL, g_printer_devno, - "g_printer"); + dev->pdev = device_create_drvdata(usb_gadget_class, NULL, + g_printer_devno, NULL, "g_printer"); if (IS_ERR(dev->pdev)) { ERROR(dev, "Failed to create device: g_printer\n"); goto fail; diff --git a/drivers/usb/mon/mon_bin.c b/drivers/usb/mon/mon_bin.c index 49145534e06e..5f7d7e283fc1 100644 --- a/drivers/usb/mon/mon_bin.c +++ b/drivers/usb/mon/mon_bin.c @@ -1156,8 +1156,9 @@ int mon_bin_add(struct mon_bus *mbus, const struct usb_bus *ubus) if (minor >= MON_BIN_MAX_MINOR) return 0; - dev = device_create(mon_bin_class, ubus? ubus->controller: NULL, - MKDEV(MAJOR(mon_bin_dev0), minor), "usbmon%d", minor); + dev = device_create_drvdata(mon_bin_class, ubus? ubus->controller: NULL, + MKDEV(MAJOR(mon_bin_dev0), minor), NULL, + "usbmon%d", minor); if (IS_ERR(dev)) return 0; |