Re: [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





在 2020/7/17 10:22, Coly Li 写道:
On 2020/7/16 17:54, Coly Li wrote:
On 2020/7/16 17:03, Qinglang Miao wrote:
From: Yongqiang Liu <liuyongqiang13@xxxxxxxxxx>


Hi Qianlang and Yongqiang,

Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code.

Signed-off-by: Yongqiang Liu <liuyongqiang13@xxxxxxxxxx>
---
  drivers/md/bcache/closure.c | 16 +++-------------
  1 file changed, 3 insertions(+), 13 deletions(-)

diff --git a/drivers/md/bcache/closure.c b/drivers/md/bcache/closure.c
index 99222aa5d..37b9c5d49 100644
--- a/drivers/md/bcache/closure.c
+++ b/drivers/md/bcache/closure.c
@@ -159,7 +159,7 @@ void closure_debug_destroy(struct closure *cl)
static struct dentry *closure_debug; -static int debug_seq_show(struct seq_file *f, void *data)
+static int debug_show(struct seq_file *f, void *data)
  {
  	struct closure *cl;
@@ -188,17 +188,7 @@ static int debug_seq_show(struct seq_file *f, void *data)
  	return 0;
  }
-static int debug_seq_open(struct inode *inode, struct file *file)
-{
-	return single_open(file, debug_seq_show, NULL);
-}
-

Here NULL is sent to single_open(), in DEFINE_SHOW_ATTRIBUTE()
inode->i_private is sent into single_open(). I don't see the commit log
mentions or estimates such change.


Still this change modifies original code logic, I need to know the exact
effect before taking this patch.
>
It's equivalent to original code logic, because inode->iprivate equals to third parameter of debugfs_create_file() which is NULL.


-static const struct file_operations debug_ops = {
-	.owner		= THIS_MODULE,
-	.open		= debug_seq_open,
-	.read_iter		= seq_read_iter,

I doubt this patch applies to Linux v5.8-rc, this is how debug_ops is
defined in Linux v5.8-rc5,


I realize your patch is against linux-next, which is ahead of both
linux-block and mainline tree. So this patch does not apply to
linux-block tree, which is my upstream for bcache going to upstream.

I suggest to generate the patch against latest mainline kernel, or
linux-block branch for next merge window (for 5.9 it is branch
remotes/origin/for-5.9/drivers).

I've sent a new patch against latest mainline kernel. Thanks.

196 static const struct file_operations debug_ops = {
197         .owner          = THIS_MODULE,
198         .open           = debug_seq_open,
199         .read           = seq_read,
200         .release        = single_release
201 };

-	.release	= single_release
-};
+DEFINE_SHOW_ATTRIBUTE(debug);
void __init closure_debug_init(void)
  {
@@ -209,7 +199,7 @@ void  __init closure_debug_init(void)
  		 * about this.
  		 */
  		closure_debug = debugfs_create_file(
-			"closures", 0400, bcache_debug, NULL, &debug_ops);
+				"closures", 0400, bcache_debug, NULL, &debug_fops);
  }
  #endif

Do you test your change with upstream kernel ? Or at least you should
try to apply and compile the patch with latest upstream kernel.

I withdraw the above wrong word, the -next tag in patch subject was
overlooked by me. Next time I will try to avoid such mistake.

Coly Li


.




[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux