docs: debugfs: do not recommend debugfs_remove_recursive

Update the debugfs documentation to indicate that debugfs_remove()
should be used to clean up debugfs entries.

In commit a3d1e7eb5a ("simple_recursive_removal(): kernel-side rm -rf
for ramfs-style filesystems"), function debugfs_remove_recursive()
was made into an alias for debugfs_remove():

    #define debugfs_remove_recursive debugfs_remove

Therefore, drivers should just use debugfs_remove() going forward.

Signed-off-by: Timur Tabi <ttabi@nvidia.com>
Link: https://lore.kernel.org/r/20250429173958.3973958-1-ttabi@nvidia.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Timur Tabi
2025-04-29 12:39:58 -05:00
committed by Greg Kroah-Hartman
parent 0e4965c80e
commit e99efa8ac8
2 changed files with 7 additions and 14 deletions

View File

@@ -229,22 +229,15 @@ module is unloaded without explicitly removing debugfs entries, the result
will be a lot of stale pointers and no end of highly antisocial behavior.
So all debugfs users - at least those which can be built as modules - must
be prepared to remove all files and directories they create there. A file
can be removed with::
or directory can be removed with::
void debugfs_remove(struct dentry *dentry);
The dentry value can be NULL or an error value, in which case nothing will
be removed.
Once upon a time, debugfs users were required to remember the dentry
pointer for every debugfs file they created so that all files could be
cleaned up. We live in more civilized times now, though, and debugfs users
can call::
void debugfs_remove_recursive(struct dentry *dentry);
If this function is passed a pointer for the dentry corresponding to the
top-level directory, the entire hierarchy below that directory will be
removed.
be removed. Note that this function will recursively remove all files and
directories underneath it. Previously, debugfs_remove_recursive() was used
to perform that task, but this function is now just an alias to
debugfs_remove(). debugfs_remove_recursive() should be considered
deprecated.
.. [1] http://lwn.net/Articles/309298/

View File

@@ -155,7 +155,7 @@ The general idea is:
``my_variable``
- Clean up the directory when removing the device
(``debugfs_remove_recursive(parent);``)
(``debugfs_remove(parent);``)
For the full documentation see :doc:`/filesystems/debugfs`.