swiotlb: Refactor swiotlb_create_debugfs
authorClaire Chang <tientzu@chromium.org>
Sat, 19 Jun 2021 03:40:33 +0000 (11:40 +0800)
committerKonrad Rzeszutek Wilk <konrad@kernel.org>
Wed, 14 Jul 2021 00:04:35 +0000 (20:04 -0400)
Split the debugfs creation to make the code reusable for supporting
different bounce buffer pools.

Signed-off-by: Claire Chang <tientzu@chromium.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Tested-by: Stefano Stabellini <sstabellini@kernel.org>
Tested-by: Will Deacon <will@kernel.org>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
kernel/dma/swiotlb.c

index 414db5fc8de935dc257bf57fc3a626c058281900..ae6a151d0a41196a2e7282007411d072fa9202c0 100644 (file)
@@ -669,19 +669,26 @@ bool is_swiotlb_active(void)
 EXPORT_SYMBOL_GPL(is_swiotlb_active);
 
 #ifdef CONFIG_DEBUG_FS
+static struct dentry *debugfs_dir;
 
-static int __init swiotlb_create_debugfs(void)
+static void swiotlb_create_debugfs_files(struct io_tlb_mem *mem)
 {
-       struct io_tlb_mem *mem = io_tlb_default_mem;
-
-       if (!mem)
-               return 0;
-       mem->debugfs = debugfs_create_dir("swiotlb", NULL);
        debugfs_create_ulong("io_tlb_nslabs", 0400, mem->debugfs, &mem->nslabs);
        debugfs_create_ulong("io_tlb_used", 0400, mem->debugfs, &mem->used);
+}
+
+static int __init swiotlb_create_default_debugfs(void)
+{
+       struct io_tlb_mem *mem = io_tlb_default_mem;
+
+       debugfs_dir = debugfs_create_dir("swiotlb", NULL);
+       if (mem) {
+               mem->debugfs = debugfs_dir;
+               swiotlb_create_debugfs_files(mem);
+       }
        return 0;
 }
 
-late_initcall(swiotlb_create_debugfs);
+late_initcall(swiotlb_create_default_debugfs);
 
 #endif