* [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE @ 2020-07-16 9:03 Qinglang Miao 2020-07-16 9:54 ` Coly Li 0 siblings, 1 reply; 5+ messages in thread From: Qinglang Miao @ 2020-07-16 9:03 UTC (permalink / raw) To: Greg Kroah-Hartman, Coly Li, Kent Overstreet; +Cc: llinux-tegra, linux-kernel From: Yongqiang Liu <liuyongqiang13@huawei.com> Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code. Signed-off-by: Yongqiang Liu <liuyongqiang13@huawei.com> --- 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); -} - -static const struct file_operations debug_ops = { - .owner = THIS_MODULE, - .open = debug_seq_open, - .read_iter = seq_read_iter, - .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 -- 2.17.1 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE 2020-07-16 9:03 [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE Qinglang Miao @ 2020-07-16 9:54 ` Coly Li 2020-07-17 2:22 ` Coly Li 0 siblings, 1 reply; 5+ messages in thread From: Coly Li @ 2020-07-16 9:54 UTC (permalink / raw) To: Qinglang Miao Cc: Greg Kroah-Hartman, Kent Overstreet, linux-tegra, linux-kernel, liuyongqiang13 On 2020/7/16 17:03, Qinglang Miao wrote: > From: Yongqiang Liu <liuyongqiang13@huawei.com> > Hi Qianlang and Yongqiang, > Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code. > > Signed-off-by: Yongqiang Liu <liuyongqiang13@huawei.com> > --- > 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. > -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, 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. Thanks. Coly Li ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE 2020-07-16 9:54 ` Coly Li @ 2020-07-17 2:22 ` Coly Li 2020-07-17 2:42 ` miaoqinglang 2020-09-17 12:20 ` miaoqinglang 0 siblings, 2 replies; 5+ messages in thread From: Coly Li @ 2020-07-17 2:22 UTC (permalink / raw) To: Qinglang Miao Cc: Greg Kroah-Hartman, Kent Overstreet, linux-tegra, linux-kernel, liuyongqiang13 On 2020/7/16 17:54, Coly Li wrote: > On 2020/7/16 17:03, Qinglang Miao wrote: >> From: Yongqiang Liu <liuyongqiang13@huawei.com> >> > > Hi Qianlang and Yongqiang, > >> Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code. >> >> Signed-off-by: Yongqiang Liu <liuyongqiang13@huawei.com> >> --- >> 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. > >> -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). > 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 ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE 2020-07-17 2:22 ` Coly Li @ 2020-07-17 2:42 ` miaoqinglang 2020-09-17 12:20 ` miaoqinglang 1 sibling, 0 replies; 5+ messages in thread From: miaoqinglang @ 2020-07-17 2:42 UTC (permalink / raw) To: Coly Li Cc: Greg Kroah-Hartman, Kent Overstreet, linux-tegra, linux-kernel, liuyongqiang13 在 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@huawei.com> >>> >> >> Hi Qianlang and Yongqiang, >> >>> Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code. >>> >>> Signed-off-by: Yongqiang Liu <liuyongqiang13@huawei.com> >>> --- >>> 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.I've noticed this diffrence and I'm testing bcache on a new qemu environment with this patch applied. > >> >>> -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). > Yes you're right, this patch is based on linux-next with commit <4d4901c6d7>. Sorry I didn't mention it in commit log. > >> 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 > > > . > I will send a new patch based on 5.9 mainline after more detailed analysis and test. Thanks. Qinglang . ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE 2020-07-17 2:22 ` Coly Li 2020-07-17 2:42 ` miaoqinglang @ 2020-09-17 12:20 ` miaoqinglang 1 sibling, 0 replies; 5+ messages in thread From: miaoqinglang @ 2020-09-17 12:20 UTC (permalink / raw) To: Coly Li Cc: Greg Kroah-Hartman, Kent Overstreet, linux-tegra, linux-kernel, liuyongqiang13 在 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@huawei.com> >>> >> >> Hi Qianlang and Yongqiang, >> >>> Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code. >>> >>> Signed-off-by: Yongqiang Liu <liuyongqiang13@huawei.com> >>> --- >>> 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 > > > . > ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2020-09-17 12:22 UTC | newest] Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-07-16 9:03 [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE Qinglang Miao 2020-07-16 9:54 ` Coly Li 2020-07-17 2:22 ` Coly Li 2020-07-17 2:42 ` miaoqinglang 2020-09-17 12:20 ` miaoqinglang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®