On Thu, 23 Apr 2020 at 13:55, Zouwei (Samuel) <zou_wei@xxxxxxxxxx> wrote: > > Hi Ulf, > > Thanks for your review and reply. > > 1. DEFINE_SIMPLE_ATTRIBUTE + debugfs_create_file() imposes some significant overhead as compared to DEFINE_DEBUGFS_ATTRIBUTE + debugfs_create_file_unsafe(). > You can refer to the patch of 1a2b3666da58 ("mt76: fix debugfs_simple_attr.cocci warnings") I see. > 2. debugfs_create_file_unsafe(...&mmc_clock_fops) is corresponds to DEFINE_DEBUGFS_ATTRIBUTE(mmc_clock_fops...), so I only modified this one. I have now read the complete function header of debugfs_create_file_unsafe() and realized that this is indeed okay. > > -----邮件原件----- > 发件人: Ulf Hansson [mailto:ulf.hansson@xxxxxxxxxx] > 发送时间: 2020年4月23日 19:17 > 收件人: Zouwei (Samuel) <zou_wei@xxxxxxxxxx> > 抄送: linux-mmc@xxxxxxxxxxxxxxx; Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx> > 主题: Re: [PATCH -next] mmc: core: Use DEFINE_DEBUGFS_ATTRIBUTE instead of DEFINE_SIMPLE_ATTRIBUTE > > On Thu, 23 Apr 2020 at 11:09, Zou Wei <zou_wei@xxxxxxxxxx> wrote: > > > > Fixes coccicheck warning: > > > > drivers/mmc/core/debugfs.c:222:0-23: WARNING: mmc_clock_fops should be > > defined with DEFINE_DEBUGFS_ATTRIBUTE > > > > Use DEFINE_DEBUGFS_ATTRIBUTE rather than DEFINE_SIMPLE_ATTRIBUTE for > > debugfs files > > > > Fixes: 703aae3d09a4b ("mmc: add a file to debugfs for changing host > > clock at runtime") > > Fixes: a04c50aaa916f ("mmc: core: no need to check return value of > > debugfs_create functions") > > Reported-by: Hulk Robot <hulkci@xxxxxxxxxx> > > Signed-off-by: Zou Wei <zou_wei@xxxxxxxxxx> Applied for next, thanks! Kind regards Uffe > > --- > > drivers/mmc/core/debugfs.c | 6 +++--- > > 1 file changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/mmc/core/debugfs.c b/drivers/mmc/core/debugfs.c > > index 09e0c76..9ec84c8 100644 > > --- a/drivers/mmc/core/debugfs.c > > +++ b/drivers/mmc/core/debugfs.c > > @@ -219,7 +219,7 @@ static int mmc_clock_opt_set(void *data, u64 val) > > return 0; > > } > > > > -DEFINE_SIMPLE_ATTRIBUTE(mmc_clock_fops, mmc_clock_opt_get, > > mmc_clock_opt_set, > > +DEFINE_DEBUGFS_ATTRIBUTE(mmc_clock_fops, mmc_clock_opt_get, > > +mmc_clock_opt_set, > > "%llu\n"); > > > > void mmc_add_host_debugfs(struct mmc_host *host) @@ -232,8 +232,8 @@ > > void mmc_add_host_debugfs(struct mmc_host *host) > > debugfs_create_file("ios", S_IRUSR, root, host, &mmc_ios_fops); > > debugfs_create_x32("caps", S_IRUSR, root, &host->caps); > > debugfs_create_x32("caps2", S_IRUSR, root, &host->caps2); > > - debugfs_create_file("clock", S_IRUSR | S_IWUSR, root, host, > > - &mmc_clock_fops); > > + debugfs_create_file_unsafe("clock", S_IRUSR | S_IWUSR, root, host, > > + &mmc_clock_fops); > > Apologize for my ignorance, but why convert to the *_unsafe option for this one, but not for the others? > > [...] > > Kind regards > Uffe