[PATCH 4/6] drm/debugfs: Create wrapper to register debugfs
Maíra Canal
mcanal at igalia.com
Mon Jan 16 10:28:14 UTC 2023
Create a helper to encapsulate the code that creates a new debugfs files
from a linked list related to an object. Moreover, the helper also
provides more flexibily on the type of the object.
Signed-off-by: Maíra Canal <mcanal at igalia.com>
---
drivers/gpu/drm/drm_debugfs.c | 25 +++++++++++++------------
1 file changed, 13 insertions(+), 12 deletions(-)
diff --git a/drivers/gpu/drm/drm_debugfs.c b/drivers/gpu/drm/drm_debugfs.c
index aca460fa5d23..2d1e3072065a 100644
--- a/drivers/gpu/drm/drm_debugfs.c
+++ b/drivers/gpu/drm/drm_debugfs.c
@@ -236,11 +236,21 @@ static void drm_debugfs_list_add(struct list_head *entry, struct drm_debugfs_lis
mutex_unlock(&debugfs_list->mutex);
}
+static void drm_debugfs_register(struct drm_minor *minor, struct drm_debugfs_list *debugfs_list)
+{
+ struct drm_debugfs_entry *entry, *tmp;
+
+ list_for_each_entry_safe(entry, tmp, &debugfs_list->list, list) {
+ debugfs_create_file(entry->file.name, 0444,
+ minor->debugfs_root, entry, &drm_debugfs_entry_fops);
+ list_del(&entry->list);
+ }
+}
+
int drm_debugfs_init(struct drm_minor *minor, int minor_id,
struct dentry *root)
{
struct drm_device *dev = minor->dev;
- struct drm_debugfs_entry *entry, *tmp;
char name[64];
INIT_LIST_HEAD(&minor->debugfs_list);
@@ -263,11 +273,7 @@ int drm_debugfs_init(struct drm_minor *minor, int minor_id,
if (dev->driver->debugfs_init)
dev->driver->debugfs_init(minor);
- list_for_each_entry_safe(entry, tmp, &dev->debugfs_list.list, list) {
- debugfs_create_file(entry->file.name, 0444,
- minor->debugfs_root, entry, &drm_debugfs_entry_fops);
- list_del(&entry->list);
- }
+ drm_debugfs_register(minor, &dev->debugfs_list);
return 0;
}
@@ -275,16 +281,11 @@ int drm_debugfs_init(struct drm_minor *minor, int minor_id,
void drm_debugfs_late_register(struct drm_device *dev)
{
struct drm_minor *minor = dev->primary;
- struct drm_debugfs_entry *entry, *tmp;
if (!minor)
return;
- list_for_each_entry_safe(entry, tmp, &dev->debugfs_list.list, list) {
- debugfs_create_file(entry->file.name, 0444,
- minor->debugfs_root, entry, &drm_debugfs_entry_fops);
- list_del(&entry->list);
- }
+ drm_debugfs_register(minor, &dev->debugfs_list);
}
int drm_debugfs_remove_files(const struct drm_info_list *files, int count,
--
2.39.0
More information about the dri-devel
mailing list