Skip to content

Commit

Permalink
Bluetooth: Create HCI device debugfs directory in hci_register_dev
Browse files Browse the repository at this point in the history
Create the debugfs directory for each HCI device directly in
hci_register_dev function and remove it during hci_unregister_dev.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
  • Loading branch information
Marcel Holtmann authored and Johan Hedberg committed Oct 18, 2013
1 parent 1120e4b commit 0153e2e
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 15 deletions.
5 changes: 5 additions & 0 deletions net/bluetooth/hci_core.c
Original file line number Diff line number Diff line change
Expand Up @@ -2479,6 +2479,9 @@ int hci_register_dev(struct hci_dev *hdev)
goto err;
}

if (!IS_ERR_OR_NULL(bt_debugfs))
hdev->debugfs = debugfs_create_dir(hdev->name, bt_debugfs);

error = hci_add_sysfs(hdev);
if (error < 0)
goto err_wqueue;
Expand Down Expand Up @@ -2569,6 +2572,8 @@ void hci_unregister_dev(struct hci_dev *hdev)

hci_del_sysfs(hdev);

debugfs_remove_recursive(hdev->debugfs);

destroy_workqueue(hdev->workqueue);
destroy_workqueue(hdev->req_workqueue);

Expand Down
16 changes: 1 addition & 15 deletions net/bluetooth/hci_sysfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -409,32 +409,18 @@ void hci_init_sysfs(struct hci_dev *hdev)
int hci_add_sysfs(struct hci_dev *hdev)
{
struct device *dev = &hdev->dev;
int err;

BT_DBG("%p name %s bus %d", hdev, hdev->name, hdev->bus);

dev_set_name(dev, "%s", hdev->name);

err = device_add(dev);
if (err < 0)
return err;

if (!bt_debugfs)
return 0;

hdev->debugfs = debugfs_create_dir(hdev->name, bt_debugfs);
if (!hdev->debugfs)
return 0;

return 0;
return device_add(dev);
}

void hci_del_sysfs(struct hci_dev *hdev)
{
BT_DBG("%p name %s bus %d", hdev, hdev->name, hdev->bus);

debugfs_remove_recursive(hdev->debugfs);

device_del(&hdev->dev);
}

Expand Down

0 comments on commit 0153e2e

Please sign in to comment.