ath9k: use debugfs_remove_recursive() instead of keeping pointers to all entries
authorFelix Fietkau <nbd@openwrt.org>
Tue, 11 May 2010 15:23:00 +0000 (17:23 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 12 May 2010 20:39:06 +0000 (16:39 -0400)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/ath9k/debug.c
drivers/net/wireless/ath/ath9k/debug.h

index ab59e2e..59252ce 100644 (file)
@@ -721,52 +721,36 @@ int ath9k_init_debug(struct ath_hw *ah)
        sc->debug.debugfs_phy = debugfs_create_dir(wiphy_name(sc->hw->wiphy),
                                                      ath9k_debugfs_root);
        if (!sc->debug.debugfs_phy)
-               goto err;
+               return -ENOMEM;
 
 #ifdef CONFIG_ATH_DEBUG
-       sc->debug.debugfs_debug = debugfs_create_file("debug",
-               S_IRUSR | S_IWUSR, sc->debug.debugfs_phy, sc, &fops_debug);
-       if (!sc->debug.debugfs_debug)
+       if (!debugfs_create_file("debug", S_IRUSR | S_IWUSR,
+                       sc->debug.debugfs_phy, sc, &fops_debug))
                goto err;
 #endif
 
-       sc->debug.debugfs_dma = debugfs_create_file("dma", S_IRUSR,
-                                      sc->debug.debugfs_phy, sc, &fops_dma);
-       if (!sc->debug.debugfs_dma)
+       if (!debugfs_create_file("dma", S_IRUSR, sc->debug.debugfs_phy,
+                       sc, &fops_dma))
                goto err;
 
-       sc->debug.debugfs_interrupt = debugfs_create_file("interrupt",
-                                                    S_IRUSR,
-                                                    sc->debug.debugfs_phy,
-                                                    sc, &fops_interrupt);
-       if (!sc->debug.debugfs_interrupt)
+       if (!debugfs_create_file("interrupt", S_IRUSR, sc->debug.debugfs_phy,
+                       sc, &fops_interrupt))
                goto err;
 
-       sc->debug.debugfs_rcstat = debugfs_create_file("rcstat",
-                                                 S_IRUSR,
-                                                 sc->debug.debugfs_phy,
-                                                 sc, &fops_rcstat);
-       if (!sc->debug.debugfs_rcstat)
+       if (!debugfs_create_file("rcstat", S_IRUSR, sc->debug.debugfs_phy,
+                       sc, &fops_rcstat))
                goto err;
 
-       sc->debug.debugfs_wiphy = debugfs_create_file(
-               "wiphy", S_IRUSR | S_IWUSR, sc->debug.debugfs_phy, sc,
-               &fops_wiphy);
-       if (!sc->debug.debugfs_wiphy)
+       if (!debugfs_create_file("wiphy", S_IRUSR | S_IWUSR,
+                       sc->debug.debugfs_phy, sc, &fops_wiphy))
                goto err;
 
-       sc->debug.debugfs_xmit = debugfs_create_file("xmit",
-                                                    S_IRUSR,
-                                                    sc->debug.debugfs_phy,
-                                                    sc, &fops_xmit);
-       if (!sc->debug.debugfs_xmit)
+       if (!debugfs_create_file("xmit", S_IRUSR, sc->debug.debugfs_phy,
+                       sc, &fops_xmit))
                goto err;
 
-       sc->debug.debugfs_recv = debugfs_create_file("recv",
-                                                    S_IRUSR,
-                                                    sc->debug.debugfs_phy,
-                                                    sc, &fops_recv);
-       if (!sc->debug.debugfs_recv)
+       if (!debugfs_create_file("recv", S_IRUSR, sc->debug.debugfs_phy,
+                       sc, &fops_recv))
                goto err;
 
        return 0;
@@ -780,14 +764,7 @@ void ath9k_exit_debug(struct ath_hw *ah)
        struct ath_common *common = ath9k_hw_common(ah);
        struct ath_softc *sc = (struct ath_softc *) common->priv;
 
-       debugfs_remove(sc->debug.debugfs_recv);
-       debugfs_remove(sc->debug.debugfs_xmit);
-       debugfs_remove(sc->debug.debugfs_wiphy);
-       debugfs_remove(sc->debug.debugfs_rcstat);
-       debugfs_remove(sc->debug.debugfs_interrupt);
-       debugfs_remove(sc->debug.debugfs_dma);
-       debugfs_remove(sc->debug.debugfs_debug);
-       debugfs_remove(sc->debug.debugfs_phy);
+       debugfs_remove_recursive(sc->debug.debugfs_phy);
 }
 
 int ath9k_debug_create_root(void)
index c545960..7314360 100644 (file)
@@ -153,13 +153,6 @@ struct ath_stats {
 
 struct ath9k_debug {
        struct dentry *debugfs_phy;
-       struct dentry *debugfs_debug;
-       struct dentry *debugfs_dma;
-       struct dentry *debugfs_interrupt;
-       struct dentry *debugfs_rcstat;
-       struct dentry *debugfs_wiphy;
-       struct dentry *debugfs_xmit;
-       struct dentry *debugfs_recv;
        struct ath_stats stats;
 };