From b0f9da7e02776a8c5ad61b9e24feebf7b12a7243 Mon Sep 17 00:00:00 2001 From: Felipe Balbi Date: Thu, 25 Mar 2010 13:25:18 +0200 Subject: [PATCH] usb: musb: debugfs: musb_exit_debugfs() can be called on probe when we fail to probe(), we can call musb_exit_debugfs(). Allow that by removing section annotations. Signed-off-by: Felipe Balbi Signed-off-by: Greg Kroah-Hartman --- drivers/usb/musb/musb_core.c | 7 +++++-- drivers/usb/musb/musb_debugfs.c | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/usb/musb/musb_core.c b/drivers/usb/musb/musb_core.c index 3466cd53e9c8..27aaaa023a1e 100644 --- a/drivers/usb/musb/musb_core.c +++ b/drivers/usb/musb/musb_core.c @@ -2056,12 +2056,12 @@ musb_init_controller(struct device *dev, int nIrq, void __iomem *ctrl) status = musb_init_debugfs(musb); if (status < 0) - goto fail2; + goto fail4; #ifdef CONFIG_SYSFS status = sysfs_create_group(&musb->controller->kobj, &musb_attr_group); if (status) - goto fail4; + goto fail5; #endif dev_info(dev, "USB %s mode controller at %p using %s, IRQ %d\n", @@ -2078,6 +2078,9 @@ musb_init_controller(struct device *dev, int nIrq, void __iomem *ctrl) return 0; +fail5: + musb_exit_debugfs(musb); + fail4: if (!is_otg_enabled(musb) && is_host_enabled(musb)) usb_remove_hcd(musb_to_hcd(musb)); diff --git a/drivers/usb/musb/musb_debugfs.c b/drivers/usb/musb/musb_debugfs.c index b6a27bab223a..7768634a7576 100644 --- a/drivers/usb/musb/musb_debugfs.c +++ b/drivers/usb/musb/musb_debugfs.c @@ -289,7 +289,7 @@ int __init musb_init_debugfs(struct musb *musb) return ret; } -void __exit musb_exit_debugfs(struct musb *musb) +void /* __init_or_exit */ musb_exit_debugfs(struct musb *musb) { debugfs_remove_recursive(musb_debugfs_root); } -- GitLab