HID: register debugfs entries before adding device
Register debugfs entries before calling device_add() so debugfs entries are already present when HID driver's probe function gets called on device hotplug. Also undo debugfs entry registration if device_add() fails so status HID_STAT_ADDED and debugfs registration status remain consistent and we don't leak the debugfs entries. Signed-off-by: Bruno Prémont <bonbons@linux-vserver.org> Cc: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
a85821fce2
commit
4da361b691
|
@ -1768,11 +1768,12 @@ int hid_add_device(struct hid_device *hdev)
|
|||
dev_set_name(&hdev->dev, "%04X:%04X:%04X.%04X", hdev->bus,
|
||||
hdev->vendor, hdev->product, atomic_inc_return(&id));
|
||||
|
||||
hid_debug_register(hdev, dev_name(&hdev->dev));
|
||||
ret = device_add(&hdev->dev);
|
||||
if (!ret)
|
||||
hdev->status |= HID_STAT_ADDED;
|
||||
|
||||
hid_debug_register(hdev, dev_name(&hdev->dev));
|
||||
else
|
||||
hid_debug_unregister(hdev);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue