Currently only 12 characters of the cma name is being used as the debug
directories where as the cma name can be of length CMA_MAX_NAME(=64)
characters. One side problem with this is having 2 cma's with first
common 12 characters would end up in trying to create directories with
same name and fails with -EEXIST thus can limit cma debug functionality.
Also drop 'cma-' prefix for the cma debug directories as they are
clearly evident that they are for cma debug through creating them in
/sys/kernel/debug/cma/ path.
Signed-off-by: Charan Teja Kalla <[email protected]>
---
mm/cma_debug.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/mm/cma_debug.c b/mm/cma_debug.c
index 2e77049..602fff8 100644
--- a/mm/cma_debug.c
+++ b/mm/cma_debug.c
@@ -163,11 +163,8 @@ DEFINE_DEBUGFS_ATTRIBUTE(cma_alloc_fops, NULL, cma_alloc_write, "%llu\n");
static void cma_debugfs_add_one(struct cma *cma, struct dentry *root_dentry)
{
struct dentry *tmp;
- char name[16];
- scnprintf(name, sizeof(name), "cma-%s", cma->name);
-
- tmp = debugfs_create_dir(name, root_dentry);
+ tmp = debugfs_create_dir(cma->name, root_dentry);
debugfs_create_file("alloc", 0200, tmp, cma, &cma_alloc_fops);
debugfs_create_file("free", 0200, tmp, cma, &cma_free_fops);
--
2.7.4
On Wed, 10 Aug 2022 22:58:05 +0530 Charan Teja Kalla <[email protected]> wrote:
> Currently only 12 characters of the cma name is being used as the debug
> directories where as the cma name can be of length CMA_MAX_NAME(=64)
> characters. One side problem with this is having 2 cma's with first
> common 12 characters would end up in trying to create directories with
> same name and fails with -EEXIST thus can limit cma debug functionality.
I guess so. There might be back-compatibility issues, but it's
debugfs...
> Also drop 'cma-' prefix for the cma debug directories as they are
> clearly evident that they are for cma debug through creating them in
> /sys/kernel/debug/cma/ path.
I guess so. But please run `grep -r cma- Documentation'
Thanks Andrew!!
On 8/11/2022 3:01 AM, Andrew Morton wrote:
> On Wed, 10 Aug 2022 22:58:05 +0530 Charan Teja Kalla <[email protected]> wrote:
>
>> Currently only 12 characters of the cma name is being used as the debug
>> directories where as the cma name can be of length CMA_MAX_NAME(=64)
>> characters. One side problem with this is having 2 cma's with first
>> common 12 characters would end up in trying to create directories with
>> same name and fails with -EEXIST thus can limit cma debug functionality.
>
> I guess so. There might be back-compatibility issues, but it's
> debugfs...
>
>
>> Also drop 'cma-' prefix for the cma debug directories as they are
>> clearly evident that they are for cma debug through creating them in
>> /sys/kernel/debug/cma/ path.
>
> I guess so. But please run `grep -r cma- Documentation'
I see the Documentation/admin-guide/mm/cma_debugfs.rst is not upto date.
Commit f318dd083c81 ("cma: Store a name in the cma structure") moved the
cma names from int to strings but no update to this document.
Will fix the Documentation part in V2.
>