From 8ac6a6b6683613f8dd1180b606d168789fb5b8e7 Mon Sep 17 00:00:00 2001 From: Yuanyuan Liu Date: Wed, 24 May 2017 12:07:12 -0700 Subject: [PATCH 1/2] icnss: Change debugfs permission Change debugfs permission to allow root only access to those files. CRs-Fixed: 2051867 Change-Id: I4bef907f8cbe39169b38e4f19072a0628e199691 Signed-off-by: Yuanyuan Liu --- drivers/soc/qcom/icnss.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/soc/qcom/icnss.c b/drivers/soc/qcom/icnss.c index 8c242bc7a702..9286d83bbc57 100644 --- a/drivers/soc/qcom/icnss.c +++ b/drivers/soc/qcom/icnss.c @@ -4019,14 +4019,14 @@ static int icnss_debugfs_create(struct icnss_priv *priv) priv->root_dentry = root_dentry; - debugfs_create_file("fw_debug", 0644, root_dentry, priv, + debugfs_create_file("fw_debug", 0600, root_dentry, priv, &icnss_fw_debug_fops); - debugfs_create_file("stats", 0644, root_dentry, priv, + debugfs_create_file("stats", 0600, root_dentry, priv, &icnss_stats_fops); debugfs_create_file("reg_read", 0600, root_dentry, priv, &icnss_regread_fops); - debugfs_create_file("reg_write", 0644, root_dentry, priv, + debugfs_create_file("reg_write", 0600, root_dentry, priv, &icnss_regwrite_fops); out: From 568d62f5653c85728add9671c52ab45373636e74 Mon Sep 17 00:00:00 2001 From: Yuanyuan Liu Date: Wed, 24 May 2017 12:13:49 -0700 Subject: [PATCH 2/2] icnss: create debugfs entries when CONFIG_ICNSS_DEBUG is enabled Other than stats every debugfs entry should be under CONFIG_ICNSS_DEBUG so that we don't enable these on build which doesn't have debugging support. CRs-Fixed: 2051871 Change-Id: I336f449313bb1f0f8af4e82f40869f65f58d9f4e Signed-off-by: Yuanyuan Liu --- drivers/soc/qcom/icnss.c | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/drivers/soc/qcom/icnss.c b/drivers/soc/qcom/icnss.c index 9286d83bbc57..6a6009c051e8 100644 --- a/drivers/soc/qcom/icnss.c +++ b/drivers/soc/qcom/icnss.c @@ -4004,12 +4004,13 @@ static const struct file_operations icnss_regread_fops = { .llseek = seq_lseek, }; +#ifdef CONFIG_ICNSS_DEBUG static int icnss_debugfs_create(struct icnss_priv *priv) { int ret = 0; struct dentry *root_dentry; - root_dentry = debugfs_create_dir("icnss", 0); + root_dentry = debugfs_create_dir("icnss", NULL); if (IS_ERR(root_dentry)) { ret = PTR_ERR(root_dentry); @@ -4032,6 +4033,27 @@ static int icnss_debugfs_create(struct icnss_priv *priv) out: return ret; } +#else +static int icnss_debugfs_create(struct icnss_priv *priv) +{ + int ret = 0; + struct dentry *root_dentry; + + root_dentry = debugfs_create_dir("icnss", NULL); + + if (IS_ERR(root_dentry)) { + ret = PTR_ERR(root_dentry); + icnss_pr_err("Unable to create debugfs %d\n", ret); + return ret; + } + + priv->root_dentry = root_dentry; + + debugfs_create_file("stats", 0600, root_dentry, priv, + &icnss_stats_fops); + return 0; +} +#endif static void icnss_debugfs_destroy(struct icnss_priv *priv) {