Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1a394f02 authored by Prakash Gupta's avatar Prakash Gupta
Browse files

Revert "Revert "mm: cma: make writeable CMA debugfs optional""



This reverts commit 8d0b09d4.
With CONFIG_DEBUG_FS enable for non-debug build, we can enable read only
CMA debugfs nodes on all builds.

Change-Id: Ia4a0a9431e27ec908feaae54dbe622a1d985958b
Signed-off-by: default avatarPrakash Gupta <guptap@codeaurora.org>
parent aa860b5b
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -518,6 +518,15 @@ config CMA_DEBUGFS
	help
	  Turns on the DebugFS interface for CMA.

config  CMA_ALLOW_WRITE_DEBUGFS
	depends on CMA_DEBUGFS
	bool "Allow CMA debugfs write"
	help
	  Say 'y' here to allow the CMA debugfs write.
	  CMA debugfs write could be risky as it allows
	  cma allocation, so it is not recommended to
	  enable this option on any production device.

config CMA_AREAS
	int "Maximum count of the CMA areas"
	depends on CMA
+10 −0
Original line number Diff line number Diff line
@@ -74,6 +74,7 @@ static int cma_maxchunk_get(void *data, u64 *val)
}
DEFINE_SIMPLE_ATTRIBUTE(cma_maxchunk_fops, cma_maxchunk_get, NULL, "%llu\n");

#ifdef CONFIG_CMA_ALLOW_WRITE_DEBUGFS
static void cma_add_to_cma_mem_list(struct cma *cma, struct cma_mem *mem)
{
	spin_lock(&cma->mem_head_lock);
@@ -132,8 +133,13 @@ static int cma_free_write(void *data, u64 val)

	return cma_free_mem(cma, pages);
}
#else
#define cma_free_write NULL
#endif

DEFINE_SIMPLE_ATTRIBUTE(cma_free_fops, NULL, cma_free_write, "%llu\n");

#ifdef CONFIG_CMA_ALLOW_WRITE_DEBUGFS
static int cma_alloc_mem(struct cma *cma, int count)
{
	struct cma_mem *mem;
@@ -164,6 +170,10 @@ static int cma_alloc_write(void *data, u64 val)

	return cma_alloc_mem(cma, pages);
}
#else
#define cma_alloc_write NULL
#endif

DEFINE_SIMPLE_ATTRIBUTE(cma_alloc_fops, NULL, cma_alloc_write, "%llu\n");

static void cma_debugfs_add_one(struct cma *cma, struct dentry *root_dentry)